색칠 공부 (큰 버전)
시간 제한3초메모리 제한512 MB
정n각형의 꼭짓점을 k개 색으로 칠한 뒤 회전, 반사, 색의 임의 교환까지 적용해 같은 것을 하나로 셀 때 서로 다른 색칠의 수를 구한다.
문제
정각형의 꼭짓점을 개의 색으로 칠한다. 쓰지 않는 색이 있어도 되고, 한 색을 여러 꼭짓점에 써도 된다.
꼭짓점에 시계 방향으로 번부터 번까지 번호를 붙이면, 돌리기는 꼭짓점 를 꼭짓점 로 보내는 대응이고 뒤집기는 꼭짓점 를 꼭짓점 로 보내는 대응이다. 꼭짓점 번호는 모두 으로 나눈 나머지로 본다.
두 칠하기에 다음 세 연산을 유한 번 적용해서 서로 같아지면, 두 칠하기를 같은 한 가지 경우로 센다.
- 다각형을 돌린다.
- 다각형을 뒤집는다.
- 서로 다른 두 색 와 를 골라 색인 꼭짓점을 모두 색으로 바꾸고 색인 꼭짓점을 모두 색으로 바꾼다. 색인 꼭짓점이 없거나 색인 꼭짓점이 없어도 이 연산을 쓸 수 있다.
서로 다른 칠하기가 몇 가지인지 구하라.
입력
첫째 줄에 과 가 공백 하나로 구분되어 주어진다.
,
출력
서로 다른 칠하기의 개수를 1,000,000,007로 나눈 나머지를 한 줄에 출력한다.