트리 색칠하기
면접 대비시간 제한1초메모리 제한128 MB
인접한 정점이 서로 다른 색을 갖도록 N개 정점으로 이루어진 트리를 K가지 색으로 칠하는 경우의 수를 93563으로 나눈 나머지를 구합니다.
문제
트리는 연결되어 있고 사이클이 없는 무향 그래프이다. 노드 개와 간선 개로 이루어진 트리가 주어진다. 이 트리를 색칠하려고 한다. 즉, 각 노드에 중 한 가지 색을 배정하는데, 간선으로 이어진 두 노드는 색이 서로 달라야 한다.
색칠하는 방법이 몇 가지인지 세는 프로그램을 작성하시오. 가짓수가 매우 커질 수 있으므로 으로 나눈 나머지를 출력한다.
입력
첫째 줄에 테스트 케이스의 개수 ()가 주어진다. 이어서 개의 테스트 케이스가 다음 형식으로 주어진다.
- 각 테스트 케이스의 첫째 줄에 정수 과 가 주어진다. 은 노드의 개수 (), 는 쓸 수 있는 색의 개수 ()이다. 노드 번호는 부터 까지이다.
- 다음 개 줄에 트리의 간선이 주어진다. 각 줄에는 정수 와 (; ; )가 주어지고, 노드 와 노드 를 잇는 간선이 있다는 뜻이다.
출력
개의 줄을 출력한다. 각 테스트 케이스마다 색칠하는 방법의 수를 으로 나눈 나머지를 입력 순서대로 한 줄에 하나씩 출력한다.