QuizWit

[알림판목록 I] [알림판목록 II] [글목록][이 전][다 음]
[ 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개는 선택의 여지가 없이 정해진다는 의미입니다.

[알림판목록 I] [알림판목록 II] [글 목록][이 전][다 음]
키 즈 는 열 린 사 람 들 의 모 임 입 니 다.