순열·조합 계산기 완벽 가이드
순열(Permutation)과 조합(Combination)은 확률과 통계, 경우의 수 문제를 풀 때 가장 먼저 배우는 핵심 개념입니다. 이 계산기는 전체 개수 n과 뽑는 개수 r만 입력하면 순열 nPr, 조합 nCr, 중복순열 n∏r, 중복조합 nHr, 원순열 (n-1)!, 팩토리얼 n!까지 자바스크립트 BigInt 연산으로 자릿수 손실 없이 정확하게 계산해 드립니다.
순열과 조합의 차이
순열 nPr은 n개 중에서 r개를 순서를 구분해서 뽑아 나열하는 경우의 수입니다. 예를 들어 5명 중 2명을 뽑아 회장·부회장을 정하는 경우처럼 뽑는 순서(역할)가 결과에 영향을 줄 때 사용합니다. 계산식은 nPr = n! ÷ (n-r)! 이며, 5P2 = 5×4 = 20으로 계산됩니다.
조합 nCr은 순서를 구분하지 않고 r개를 뽑는 경우의 수입니다. 5명 중 대표 2명을 뽑을 때처럼 누가 먼저 뽑혔는지가 중요하지 않은 상황에 사용하며, nCr = nPr ÷ r! 로 구합니다. 또한 nCr = nC(n-r)이 항상 성립하는 대칭성이 있어, 10C3과 10C7의 값은 정확히 같습니다.
중복순열과 중복조합, 원순열
중복순열(n∏r)은 같은 원소를 여러 번 뽑을 수 있을 때의 순열로, 비밀번호 생성처럼 뽑은 것을 다시 뽑을 수 있는 상황에서 사용하며 n^r로 계산합니다. 중복조합(nHr)은 중복을 허용한 조합으로 nHr = C(n+r-1, r) 공식을 사용하며, 여러 종류의 과일 중 중복 허용해서 r개를 고르는 경우의 수를 구할 때 쓰입니다. 원순열은 n개를 원형으로 배열하는 경우의 수로 (n-1)!로 계산하며, 회전하면 같은 배열로 보는 원탁 배치 문제에 활용됩니다.
실생활 활용 예시
- 로또, 복권 당첨 확률 계산 — 조합(nCr) 활용
- 비밀번호·PIN 경우의 수 — 중복순열(n∏r) 활용
- 임원 선출, 순위 배정 — 순열(nPr) 활용
- 원탁 좌석 배치, 시계 방향 배열 — 원순열 활용
- 여러 종류 아이템 중복 선택 조합 — 중복조합(nHr) 활용
| 구분 | 기호 | 공식 | 특징 |
|---|---|---|---|
| 순열 | nPr | n!/(n-r)! | 순서 O, 중복 X |
| 조합 | nCr | nPr/r! | 순서 X, 중복 X |
| 중복순열 | n∏r | n^r | 순서 O, 중복 O |
| 중복조합 | nHr | C(n+r-1,r) | 순서 X, 중복 O |
| 원순열 | (n-1)! | (n-1)! | 원형 배열 |
자주 묻는 질문 (FAQ)
Q. nCr과 nC(n-r)은 왜 항상 같은가요?
A. r개를 뽑는 것은 곧 뽑지 않을 (n-r)개를 정하는 것과 동일한 선택이기 때문입니다. 예를 들어 10명 중 3명을 뽑는 경우의 수와 뽑히지 않을 7명을 정하는 경우의 수는 정확히 같습니다. 이 계산기는 매 결과마다 이 대칭성을 함께 보여드립니다.
Q. n! 값이 너무 커서 자리수가 많이 나오는데 정확한가요?
A. 네, 이 계산기는 자바스크립트의 BigInt 자료형으로 연산하기 때문에 일반 숫자형(Number)에서 발생하는 소수점 오차나 자릿수 손실 없이 매우 큰 정수도 정확하게 표시합니다. 결과 옆에 자릿수도 함께 안내합니다.
Q. r을 입력하지 않으면 어떻게 되나요?
A. r을 비워두면 순열·조합 계산은 생략되고 n의 팩토리얼(n!)과 원순열 (n-1)!만 계산해 드립니다. 순열·조합 문제가 아니라 단순히 몇 개의 자리에 몇 가지 방법으로 배열되는지(n!)만 궁금할 때 유용합니다.