| [ QuizWit ] in KIDS 글 쓴 이(By): shaper (나~랑께롱!) 날 짜 (Date): 2001년 8월 4일 토요일 오전 02시 18분 48초 제 목(Title): Re: 저도 순열과 관계된 문제... 제가 제안한 방법을 간단하게 다시 설명드리고 예를들어 보겠습니다. 전체 n개의 대상을 이용하여 제가 얘기한 "특이한 숫자"의 제일 끝자리 n_(n)부터 제일 윗자리 n_(2)까지를 만든다는 것이 기본 아이디어이고, 이 과정에서 현재 n_(n)부터 n_(m+1)까지가 정해졌다고 했을 때 아직 사용되지 않고 남아 있는 m개의 대상에게 각각 0부터 m-1까지의 m진수 숫자를 부여하여 n_(m)값으로 사용한다는 의미입니다. 예를 들어, A, B, C, D의 네 개의 대상이 있다고 합시다. 그리고, 초기 대상목록을 A(=0),B(=1),C(=2), D(=3)의 순서로 정했다면 제가 말한 방법에 의하면 각 순열(sequence)에 다음과 같이 0부터 23까지의 24개의 일련번호가 붙여집니다. sequence = special number = decimal number DCBA = 000 = 0*(4*3) + 0*(4) + 0*(1) = 0 DCAB = 001 = 0*(4*3) + 0*(4) + 1*(1) = 1 DBAC = 002 = 0*(4*3) + 0*(4) + 2*(1) = 2 CBAD = 003 = 0*(4*3) + 0*(4) + 3*(1) = 3 DBCA = 010 = 0*(4*3) + 1*(4) + 0*(1) = 4 DACB = 011 = 0*(4*3) + 1*(4) + 1*(1) = 5 DABC = 012 = 0*(4*3) + 1*(4) + 2*(1) = 6 CABD = 013 = 0*(4*3) + 1*(4) + 3*(1) = 7 CBDA = 020 = 0*(4*3) + 2*(4) + 0*(1) = 8 CADB = 021 = 0*(4*3) + 2*(4) + 1*(1) = 9 BADC = 022 = 0*(4*3) + 2*(4) + 2*(1) = 10 BACD = 023 = 0*(4*3) + 2*(4) + 3*(1) = 11 CDBA = 100 = 1*(4*3) + 0*(4) + 0*(1) = 12 CDAB = 101 = 1*(4*3) + 0*(4) + 1*(1) = 13 BDAC = 102 = 1*(4*3) + 0*(4) + 2*(1) = 14 BCAD = 103 = 1*(4*3) + 0*(4) + 3*(1) = 15 BDCA = 110 = 1*(4*3) + 1*(4) + 0*(1) = 16 ADCB = 111 = 1*(4*3) + 1*(4) + 1*(1) = 17 ADBC = 112 = 1*(4*3) + 1*(4) + 2*(1) = 18 ACBD = 113 = 1*(4*3) + 1*(4) + 3*(1) = 19 BCDA = 120 = 1*(4*3) + 2*(4) + 0*(1) = 20 ACDB = 121 = 1*(4*3) + 2*(4) + 1*(1) = 21 ABDC = 122 = 1*(4*3) + 2*(4) + 2*(1) = 22 ABCD = 123 = 1*(4*3) + 2*(4) + 3*(1) = 23 sequence는 n(=4)자리인데 special number는 n-1(=3)자리인 이유는 제일 윗자리 n_(1)은 1진수로서 항상 0이 되기 때문입니다. 이 말은 서로 다른 n개를 나열하는데 n-1개를 나열하고 나면 마지막 1개는 선택의 여지가 없이 정해진다는 의미입니다. |