중복순열과 같은 것이 있는 순열
본문숫자 0~9로 네 자리 비밀번호를 만들면 같은 숫자를 여러 번 써도 되니 순열 \({}_{10}\mathrm{P}_4\)와는 다르다. 또 BANANA의 여섯 글자를 늘어놓을 때 두 N이나 세 A끼리 자리를 바꾸어도 같은 단어이다. 이런 경우의 수는 어떻게 셀까?
1.1.1중복순열
네 자리 비밀번호의 첫째 자리에 올 수 있는 숫자는 10가지이다. 같은 숫자를 다시 써도 되므로 둘째, 셋째, 넷째 자리도 각각 10가지이다. 곱의 법칙에 따라 \(10 \times 10 \times 10 \times 10 = 10^4\)가지이다. 순열에서는 자리마다 고를 것이 하나씩 줄었지만, 여기서는 줄지 않는다.
서로 다른 \(n\)개에서 중복을 허락하여 \(r\)개를 택해 일렬로 나열하는 순열을 중복순열이라 하고, 그 수를 \({}_n\Pi_r\)로 나타낸다. \[{}_n\Pi_r = n^r\]
중복을 허락하므로 \(r\)이 \(n\)보다 커도 된다. 가령 0과 1 두 숫자로 8자리를 만드는 방법은 \({}_2\Pi_8 = 2^8 = 256\)가지이고, 이것이 1바이트로 나타낼 수 있는 수의 개수이다.
1.1.2같은 것이 있는 순열
BANANA의 글자를 모두 다른 것으로 보면, 곧 \(\text{A}_1\text{A}_2\text{A}_3\), \(\text{N}_1\text{N}_2\)로 구별하면 배열은 \(6! = 720\)가지이다. 그런데 실제로는 세 A끼리 자리를 바꾼 \(3! = 6\)가지와 두 N끼리 바꾼 \(2! = 2\)가지가 모두 같은 단어이다. 따라서 720을 \(3! \times 2!\)로 나누어 \(\dfrac{720}{12} = 60\)가지이다.
\(n\)개 가운데 같은 것이 각각 \(p\)개, \(q\)개, …, \(r\)개씩 있을 때, 이들을 모두 일렬로 나열하는 방법의 수는 \[\frac{n!}{p!\,q!\,\cdots\,r!}\ (p + q + \cdots + r = n)\]
그림 1의 바둑판 길도 같은 순열이다. 왼쪽 아래에서 오른쪽 위로 가장 짧게 가려면 오른쪽으로 \(m\)칸, 위로 \(n\)칸 가야 하고, 길 하나는 '→'와 '↑'를 늘어놓은 순서 하나와 같다. 슬라이더로 길을 바꾸어 보면 화살표의 순서가 바뀐다.1
1.1.3예제 풀이
그림 1에서 \(m = 4\), \(n = 3\)인 바둑판 길에서 가장 짧은 길의 수를 구하여라. 또 이 가운데 가운데 점 \((2, 1)\)을 반드시 지나는 길의 수를 구하여라.
길은 → 4개와 ↑ 3개를 늘어놓은 것이므로 \(\dfrac{7!}{4!\,3!} = 35\)가지이다.
점 \((2, 1)\)을 지나는 길은 두 부분으로 나뉜다. 출발점에서 \((2, 1)\)까지는 → 2개, ↑ 1개이므로 \(\dfrac{3!}{2!\,1!} = 3\)가지이다. \((2, 1)\)에서 도착점까지는 → 2개, ↑ 2개이므로 \(\dfrac{4!}{2!\,2!} = 6\)가지이다.
앞부분을 어떻게 가든 뒷부분은 6가지이므로 곱의 법칙에 따라 \(3 \times 6 = 18\)가지이다. 전체 35가지 가운데 18가지가 그 점을 지나는 셈이다. 아래 탐구 카드에서 같은 것이 있는 순열과 바둑판 길을 직접 세어 보자.
- → \(m\)개와 ↑ \(n\)개의 순서는 \(m + n\)개의 자리 가운데 →가 올 \(m\)자리를 고르는 것과 같으므로 \({}_{m+n}\mathrm{C}_m\)으로도 셀 수 있다. 두 식의 값은 같다.
중복을 허락하면 자리마다 고르는 수가 줄지 않으므로 중복순열의 수는 \(n^r\)이다. 같은 것이 섞여 있으면, 모두 구별한 순열의 수를 같은 것끼리 자리를 바꾸는 경우의 수로 나눈다. 그래서 처음 질문의 비밀번호는 \(10^4\)가지, BANANA의 배열은 \(\tfrac{6!}{3!\,2!} = 60\)가지이다.