팩토리얼 ( ! )
팩토리얼이란 서로 다른 n개를 나열하는 경우의 수를 의미합니다. 기호로는 n! 이렇게 쓰고 계산은 n부터 1씩 줄여나가면서 1이 될때까지의 모든 수를 곱합니다.
순열 ( nPr )
순열이란 서로 다른 n개중에 r개를 선택하는 경우의 수를 의미합니다. (순서 상관 있음)
조합 ( nCr )
조합이란 서로 다른 n개중에 r개를 선택하는 경우의 수를 의미합니다. (순서 상관 없음)
중복 순열 ( nπr )
중복 순열이란 중복 가능한 n개중에서 r개를 선택하는 경우의 수를 의미합니다. (순서 상관 있음)
중복 조합 ( nHr )
중복 조합이란 중복 가능한 n개중에서 r개를 선택하는 경우의 수를 의미합니다. (순서 상관 없음)
같은 것이 있는 순열
순열이 같은 것이 포함된 원소들을 나열하는 경우의 수는 나열하는 원소의 팩토리얼에 중복된 원소들의 팩토리얼을 나누어주면 됩니다.
예를 들어 aaabb와 같은 경우 a가 3개이고 b가 2개이므로 5!을 3!와 2!로 나누어주면 됩니다.
원 순열
원 순열은 원 모양의 테이블에 n개의 원소를 나열하는 하는 경우의 수입니다.
예를 들어 원 모양의 테이블에 4명을 앉힐려고 한다면
1에서 시작해서 1234로 앉히던
2에서 시작해서 2341로 앉히던
3에서 시작해서 3412로 앉히던
4에서 시작해서 4123로 앉히던
원을 돌리면 모두 같다고 봅니다.
그렇기에 4팩토리얼을 4로 나누어준다면 아래와 같은 결과값을 얻을 수 있습니다.
염주 순열
n개의 서로 다른 종류의 구슬로 목걸이를 만드는 경우의 수
원순열과 비슷하지만 목걸이는 뒤집어도 같은 것으로 취급하므로 2배가 중복됩니다.
최단거리 경우의 수
A에서 B까지의 최단거리로 가는 경우의 수를 구하는 방법을 구하는 방법은 2가지가 있습니다.
A에서 B까지 최단거리로 가려면 무조건 위로 3번 오른쪽으로 4번을 가야합니다.
그렇기에 7개를 나열하는 것이니 7! 을 분자로 두고 오른쪽으로 4! 위쪽으로 4!을 나누어주는
아래와 같은공식을 도출하여 구하는 방법이 있고
위와 같이 합의 법칙을 통해 구하는 방법이 있습니다.
집합의 분할 S(n, k)
집합의 분할이란 서로 다른 n개를 똑같은 상자 k개에 넣는 경우의 수를 의미합니다. (빈상자는 있으면 안됌)]
ex) 서로 다른 6개의 공을 똑같이 생긴 2개의 상자에 넣는 경우의 수
6개를 똑같이 생긴 2개의 상자에 넣는 경우의 수는 6+15+10 = 31가지입니다.
위와 같이 공식을 통해서 구할 수도 있습니다.
자연수의 분할 P(n, k)
자연수의 분할이란 똑같은 n개를 똑같이 생긴 상자 k개에 넣는 경우의 수를 말합니다. (빈상자는 있으면 안됌)
ex) 서로 같은 6개의 공을 똑같이 생긴 2개의 상자에 넣는 경우의 수
이항 정리
이항정리란 (a+b)의 n승을 전개한것을 이항정리라고 합니다.
이항 정리의 파생 공식
순열과 조합 알고리즘 구현
[Algorithm] 순열 조합 공식 + 알고리즘 구현
반응형
원순열을 이해하는 관점은 두가지가 있습니다.
1) 순열을 구하고 중복을 제거
2) 회전하는 성질을 처음부터 고려하여 계산
오늘은 첫번째 관점으로 원순열을 계산해봅시다.
우리가 피젯스피너를 만드는 회사에 다니고 있다고 해봅시다. 아래 보이시는 그림은 피제스피너입니다.
새로운 피젯스피너를 개발하는데, 빨강/초록/파랑 세가지 색을 이용하여 날개 부분을 칠하려고 합ㄴ다.
색은 한번씩만 사용할 거구요. 몇가지 칠하는 방법이 있을지 계산해봅시다.
먼저 빨/파/초 세가지 색을 일렬로 나열해봅시다.
3x2x1 이므로, 6가지 경우가 있습니다.
빨파초
빨초파
파빨초
파초빨
초빨파
초파빨
이 중에서 빨파초, 파초빨, 초빨파로 피젯스피너를 만들어봅시다.
위 그림의 첫번째 피젯스피너를 시계방향으로 회전시켜봅시다.
두번째 피젯스피너와 같아집니다. 세번째 피젯스피너를 시계 반대방향으로 회전시키면 두번째 피젯스피너와 같아집니다. 세개의 피젯스피너는 알고보니 같은 것이었습니다.
일렬로 나열했을 때 경우의수인 6은, 실제 경우보다 3배 많이 세어진 수 입니다. 위와 같이, 하나의 경우를 세배로 늘려서 계산해주었기 때문입니다. 따라서 세가지 색으로 피젯스피너를 칠하는 경우의 수는 아래와 같이 계산됩니다.
$\frac{6}{3}=\frac{3!}{3}=2$
분자의 6은, 사용된 색들을 일렬로 나열하는 경우의 수입니다. 3은 회전했을 때 같아지는 경우의 수입니다. 3으로 나눠서 중복을 제거하는 것입니다.
이번에는 날개가 4개인 경우를 생각해봅시다. 빨강/파랑/초록/노랑 네가지 색으로 칠하려고 합니다. 색은 한번씩만 사용합니다.
먼저 네가지 색을 일렬로 나열해봅시다.
4x3x2x1 = 24가지
24라는 수는 실제 만들 수 있는 피젯스피너보다 몇배 많이 세어진 수 일까요? 날개가 4개인 피젯스피너는 회전을 시키게 되면, 4가지 경우가 같아지게 됩니다. 따라서 우리가 실제로 만들 수 있는 경우의 수는 24를 4로 나눠줘야 합니다.
$\frac{24}{4}=\frac{4!}{4}=3!=6$
이번에는 피젯스피너의 날개의 수를 n개로 늘려봅시다. 사용하는 색도 n가지로 늘어납니다. 먼저 n개의 색을 나열하겠죠? n! 입니다. 회전시키면 총 n개가 겹치니까, n으로 나눠주어야 합니다.
$\frac{n!}{n}=(n-1)!$
자 그런데, 한가지 문제가 있습니다. 피젯스피너는 회전을 할 수 있는 것 뿐만 아니라 뒤집는 것도 가능합니다. 날개가 3개인 예제로 다시 돌아가봅시다.
아래와 같은 두가지 피젯스피너를 만들 수 있었습니다.
위 그림에서 왼쪽에 있는 피젯스피너를 뒤집어봅시다. 두번째 피젯스피너와 같아지게 됩니다.
결국, 세개의 색으로 만들 수 있는 피젯스피너는 ‘1개’였습니다.
이 과정을 순차적으로 이해해봅시다.
3개의 색으로 칠할 때, 3!을 계산해주었습니다. 그리고, 회전이 가능했으므로 3으로 나눴습니다.
$\frac{3!}{3}=2$
뒤집는 것이 가능하다면 다시 2로 나눠줘야합니다.
$\frac{3!}{3}\times \frac{1}{2}=1$
일반화시켜서 정리를 해봅시다.
<회전만 가능한 크기가 n인 원순열의 경우의 수>
$\frac{n!}{n}=(n-1)!$
<회전과 뒤집기가 가능한 크기가 n인 원순열의 경우의 수>
$\frac{n!}{n}\times \frac{1}{2}=\frac{(n-1)!}{2}$
반응형
728×90
원순열 – 공식 유도, 아이디어, 적용
1. 들어가며
이 포스팅은 원순열의 공식 유도와 아이디어, 그 적용에 관한 글 입니다.
원순열의 공식과 그 유도과정은 크게 어렵지 않으나, 유도과정 속에 녹아있는 아이디어는 경우의 수를 다룸에 있어서 유용하게 쓰일 여지가 있습니다. 따라서 그 ‘방법’을 익혀놓고 다른 문제에 적용하는 게 중요하기에 이렇게 소개하게 됐습니다.
이 글이 필요한 학생은
1. 원순열의 공식이 궁금한 학생
2. 원순열의 공식 유도 과정이 궁금한 학생
3. 원순열 관련 응용문제를 해결함에 있어서 어려움을 느끼는 학생
4. 경우의 수 단원을 헤매는 학생
입니다.
제 글이 많은 학생들에게 도움이 됐으면 하는 바람입니다.
원순열의 공식과 유도
2. 원순열 공식과 그 유도
1) 원순열
원순열 이란, 서로 다른 원소를 원형의 형태로 배열할 때 발생하는 모든 경우의 수를 말합니다.
원순열은 돌렸을 때 같은 경우는 같은 경우의 수로 간주하는 게 특징입니다.
한편, 서로 다른 n개를 원순열로 나열하는 경우의 수는 (n-1)! 로 주어집니다.
2) 원순열의 공식 유도
지금부터 간단히 원순열의 공식을 유도해드리겠습니다.
공식을 유도하다보면 거기에 녹아있는 아이디어를 배울 수가 있고 그 아이디어를 다른 문제에 적용 할 수 있기 때문에 공식을 직접 유도해 보는 것은 좋은 공부방법이라 할 수 있습니다.
<원순열 공식 유도>
아래의 8등분 분할된 원을 봅시다.
이제 여기에 서로 다른 여덟가지의 색을 칠할 것입니다. 그 색을 임의로 A,B,C,D,E,F,G,H라 하죠.
그리고 그림상 회전하여 같으면 같은 경우로 치겠습니다.
어떻게 하면 될까요?
먼저, 특정한 한 가지 색(A)을 미리 칠해 놓습니다.
어쨌건 여덟 가지 색깔 모두 사용해야하기 때문에 일단 그 중 한 가지 색깔만 칠해놓는 것입니다.
그 색(A)을 임의로 붉은 색이라 생각하겠습니다.
저 상태에서 원을 아무렇게나 돌려보면, 모두 같은 경우임을 알 수 있습니다. 따라서 방금 우리가 한 행위, 즉 붉은 색을 미리 칠해놓는 행위는 전체 경우의 수에서 별도의 카운트가 필요하지 않습니다.
(여섯 구간 중 한 구간만을 칠했으니까 총 여섯 가지의 경우로 생각해줘야 하지 않냐는 의문이 생길 수도 있습니다. 그러나 그렇지 않습니다. 위의 분할된 원은 그 위치가 구분되지 않는 원이기 때문에, 위의 그림이나 아래의 그림은 같은 경우 입니다.)
다시 원래의 그림으로 돌아와서,
붉은색 바로 오른쪽을 기점으로 해서 시계방향으로 번호를 매겼습니다.
번호 1 : 붉은색으로부터 오른쪽으로 한 칸 떨어진 위치
번호 2 : 붉은색으로부터 오른쪽으로 두 칸 떨어진 위치
번호 3 : 붉은색으로부터 오른쪽으로 세 칸 떨어진 위치
번호 4 : 붉은색으로부터 오른쪽으로 네 칸 떨어진 위치
번호 5 : 붉은색으로부터 오른쪽으로 다섯 칸 떨어진 위치
번호 6 : 붉은색으로부터 오른쪽으로 여섯 칸 떨어진 위치
번호 7 : 붉은색으로부터 오른쪽으로 일곱 칸 떨어진 위치
각 번호는 붉은 색을 기준으로 모두 ‘다른 위치’가 됩니다.
즉, 7개의 서로 다른 위치가 순서를 가지고 나열되는 순열이 발생합니다.
앞에서 붉은색을 미리 칠해놓는 행위 자체는 별도의 카운트가 필요없다고 했습니다. 하지만 붉은색을 미리 칠함으로써 우리가 알고있는 ‘순열’의 개념을 적용시킬 수 있게끔 상황이 바뀌었습니다.
이제 이 서로 다른 위치에 나머지 7개 색깔을 순서대로 칠하면 됩니다. 따라서 위의 원순열에서 여덟가지 색으로 칠하는 모든 방법의 수는 (붉은 색을 제외한) 7! 가지 입니다.
앞의 논리를 그대로 적용하면, n개를 원형으로 나열하는 원순열의 총 가지수는 (n-1)! 임을 유추할 수 있습니다.
이처럼 원순열에서는 하나의 특정 원소를 미리 배열해놓으면 자연스럽게 나머지 위치가 서로 다른 위치로 구분되는 성질, 즉 일반적인 순열로 상황이 바뀌는 성질을 이용해서 경우의 수를 구합니다.
3. 원순열 공식의 적용
원순열 공식의 적용 (응용)
<문제>
그림과 같이 서로 접하고 크기가 같은 원 3개와 이 세 원의 중심을 꼭짓점으로 하는 정삼각형이 있다. 원의 내부 또는 정삼각형의 내부에 만들어지는 7개의 영역에 서로 다른 7가지 색을 모두 사용하여 칠하려고 한다.
한 영역에 한 가지 색만을 칠할 때, 색칠한 결과로 나올 수 있는 경우의 수는?
(단, 회전하여 일치하는 것은 같은 것으로 본다.) [4점]
1. 1260
2. 1680
3. 2620
4. 3760
5. 5040
2) 문제에의 적용
이제 위의 공식유도에서 쓰인 아이디어를 문제에 적용해보겠습니다.
주어진 그림은 원순열의 상황이랑 비슷합니다.
i) 일곱가지 색깔 중 한 가지 색깔을 뽑아 가운데에 칠하기.
총 일곱가지 색깔(A,B,C,D,E,F,G)중 한 가지 색깔을 뽑아 가운데에 칠하겠습니다.
(공식을 유도했던 앞의 상황과는 다릅니다. 앞의 상황에서는 붉은색을 칠하는 위치가 서로 구분되지 않는 것이고, 지금 이 상황은 가운데부분에 들어갈 색깔을 정해주는 상황입니다.)
가운데에 칠할 7가지 색깔 중 한 색을 임의로 붉은색이라 하고 아래와 같이 번호를 매기겠습니다.
ii) 나머지 6개의 색깔 중 ①,②,③에 칠할 세 가지 색깔 정하기.
이제 나머지 6개의 색깔 중 세 가지만 뽑아 1, 2, 3 위치에 칠해봅시다.
먼저, 6가지 색깔 중 세 가지 색을 선정하는 가지 수
iii) 그 세 가지 색을 ①,②,③에 칠하기.
다음으로, ①,②,③위치에 칠하는 가지 수
이 경우는 원순열인데요.
앞에서 뽑은 세 가지 색깔을 임의로 B,C,D라 하고, 그 중 특정 색(B)을 아무 위치(①번위치)에 미리 칠해놓읍시다. (어차피 색 B는 세 위치 중 한 위치에는 칠해져야 하니까요.)
①번에 칠해진 B는, 회전을 시키면 위치 ②로 갈 수도 있고 ③으로 갈 수도 있습니다. 따라서 처음 칠하는 위치 ①은 사실은 ②가 될 수도 있고 ③이 될 수도 있습니다.
즉, 처음 칠할 때의 위치는 원순열의 특성 상 구분할 수 없는 위치가 됩니다.
이제 남은 두 색 C,D를 ②번 또는 ③번에 칠해야하는데요.
①번에 B가 칠해져있으므로 이 때는 ②와 ③의 위치가 확연히 구분됩니다.
위치 ②: 위치 ①에서 오른쪽 아래.
위치 ③: 위치 ①에서 왼쪽 아래.
따라서
위치 ②에 C를 칠하고 위치 ③에 D를 칠하느냐
위치 ②에 D를 칠하고 위치 ③에 C를 칠하느냐
하는 두 가지 경우의 수 즉, 두 가지 ‘순열’이 발생합니다.
이를 굳이 원순열의 공식으로 표현하면,
①,②,③에 칠한 색을 각각 노란색, 파란색, 초록색으로 보고 아래와 같이 번호 ④,⑤,⑥을 매기겠습니다.
iv) 나머지 세 가지 색을 ④,⑤,⑥에 칠하기.
이제 일곱가지 색 중 세 가지 색(E,F,G)만 남았습니다. 이 색을 이제 ④,⑤,⑥에 각각 칠해야 하는데요. 주의할 점은, 여기서는 원순열이 아니라는 것입니다. 상황(위 그림)을 잘 보시면 세 가지 위치 ④,⑤,⑥은 모두 명확히 구분되어 있습니다.
위치 ④ : 노란색과 인접한 부채꼴
위치 ⑤ : 파란색과 인접한 부채꼴
위치 ⑥ : 초록색과 인접한 부채꼴
따라서 남은 색 E, F, G을 칠하는 경우는 회전했을 때 서로 구분이 되지 않는 원순열로 보는 게 아니라, 서로 다른 위치에 순서를 가지고 나열하는 순열로 보는 게 맞습니다. 따라서 그 경우의 수는
v) 종합
1), 2), 3), 4)에서 구한 경우의 수는 모두 동시에 일어납니다. 따라서 총 가지의 수는 이들을 곱한 값인
입니다. //풀이 끝
4. 정리
정리
이번 포스팅에서는
1. 원순열의 개념 과
2. 원순열의 공식유도 과정 및
3. 공식 유도 과정에 녹아 있는 아이디어
를 되짚어보고, 이를 문제에 적용했습니다.
원순열의 핵심은 「한 가지 특정 원소를 미리 배열한 후 그로부터 발생하는 나머지 원소들의 순열」입니다.
원순열은 공식 자체는 간단하지만 원리를 이해하지 않으면 응용문제에서 많이 헤맬 수 있습니다. 따라서 공식 유도 과정에서 녹아있는 아이디어를 반드시 이해하고 숙지하시어 문제에 적용할 수 있어야 합니다.
728×90