4. 접근
• 경우의 수 => DP?
• 그림의 수 100만, 색깔 수도 100만
• 망...
5. 그린다 !
• A -> B 는 A는 B와 색이 다르다는 뜻(fA = B)
• 각 정점에서 출발하는 간선은 하나씩만 존재
6. 그린다 !
• A -> B 는 A는 B와 색이 다르다는 뜻(fA = B)
• 각 정점에서 출발하는 간선은 하나씩만 존재
3
6 4
5
2
1
9
7 8
7. 그린다 !
• A -> B 는 A는 B와 색이 다르다는 뜻(fA = B)
• 각 정점에서 출발하는 간선은 하나씩만 존재
3
6 4
5
2
1
9
7 8
8. 직선 형태
• V개의 정점이 직선 형태를 이룸
• 끝 정점의 색이 정해졌을 때, 나머지 정점의 색을 칠하는 경우의 수
321
K – 3번 색 K - 어떤 색K - 2번 색
4
어떤 색
9. 직선 형태
• V개의 정점이 직선 형태를 이룸
• 끝 정점의 색이 정해졌을 때, 나머지 정점의 색을 칠하는 경우의 수
321
K – 3번 색 K - 어떤 색K - 2번 색
(K – 1) * (K – 1) * .. = (K – 1)^(V – 1)
4
어떤 색
10. 원형 형태
• V개의 정점이 Cycle을 이룸
• Cycle의 모든 정점들의 색을 칠하는 경우의 수
21
11. 원형 형태
• V개의 정점이 Cycle을 이룸
• Cycle의 모든 정점들의 색을 칠하는 경우의 수
21
K * (K – 1)
12. 원형 형태
• V개의 정점이 Cycle을 이룸
• Cycle의 모든 정점들의 색을 칠하는 경우의 수
2
1
3
13. 원형 형태
• V개의 정점이 Cycle을 이룸
• Cycle의 모든 정점들의 색을 칠하는 경우의 수
2
1
K * (K – 1) * (K – 2)
3
14. 원형 형태
• V개의 정점이 Cycle을 이룸
• Cycle의 모든 정점들의 색을 칠하는 경우의 수
2
1
3
5
4
X != Y
V-1개
Color X Color Y
15. 원형 형태
• V개의 정점이 Cycle을 이룸
• Cycle의 모든 정점들의 색을 칠하는 경우의 수
2
1
3
5
4
V개
X != Y
Color X Color Y
Color Z
Z != X, Z != Y
16. 원형 형태
• V개의 정점이 Cycle을 이룸
• Cycle의 모든 정점들의 색을 칠하는 경우의 수
2
1
3
5
4
V개
X != Y
Color X Color Y
Color Z
Z != X, Z != YP[V] = P[V–1] * (K-2)
17. 원형 형태
• V개의 정점이 Cycle을 이룸
• Cycle의 모든 정점들의 색을 칠하는 경우의 수
X != Y
2
1
3
5
4
V-2개
Color X Color Y
6
18. 원형 형태
• V개의 정점이 Cycle을 이룸
• Cycle의 모든 정점들의 색을 칠하는 경우의 수
2
1
3
5
4
V개
Color X Color Y
Color Z
6
X != Y
Color X
Z != X
19. 원형 형태
• V개의 정점이 Cycle을 이룸
• Cycle의 모든 정점들의 색을 칠하는 경우의 수
2
1
3
5
4
V개
Color X Color Y
Color Z
P[V] = (P[V-1] * (K–2)) + (P[V–2] * (K-1))
6
X != Y
Color X
Z != X
20. Cycle 구성 정점
• Cycle을 탐색하면서 방문 번호를 붙인다.
• 한 바퀴 돌아서 왔을 때, (방문 번호) – (이전 방문 번호)가
해당 Cycle을 구성하는 정점의 개수가 된다.
21. 답!
• 각 Cycle의 구성 정점 개수에 따른 칠하는 방법의 수의 곱과
• (K – 1)^Cycle에 속하지 않은 정점의 개수
22. 답!
• 각 Cycle의 구성 정점 개수에 따른 칠하는 방법의 수의 곱과
• (K – 1)^Cycle에 속하지 않은 정점의 개수
• Mod 연산만 잘 해주면 되는 수학문제