타임 트래블
면접 대비시간 제한2초메모리 제한512 MB
도시 n개와 연도별 트리 k개가 주어질 때, 모든 트리에서 s에서 f로 가는 경로에 놓인 도시의 수를 순서쌍 (s, f)마다 구합니다.
문제
타임머신이 발명된 미래에는 역사를 배우기가 더 쉬워졌다. 이제는 해당 연도로 가서 사건을 직접 눈으로 볼 수 있다. 교수는 이 장치를 이용해 대전환 시기의 베를란드 도로망을 연구한다.
대전환은 연속된 년 동안 진행되었다. 이 기간 동안 베를란드의 도로망은 계속 바뀌었다. 나라에는 부터 까지 번호가 매겨진 개의 도시가 있다. 매년 이 도시들은 양방향 도로 개로 연결되어 있으며, 어떤 두 도시 사이에도 경로는 하나뿐이다.
교수는 매일 두 도시 와 를 고른 뒤, 대전환의 각 연도를 차례로 거친다. 각 연도마다 에서 까지 이동하며, 경로에 있는 모든 도로를 지나간다. 이때 와 도 방문한 도시에 포함된다. 그다음 번의 이동에서 모두 방문한 도시의 수를 기록한다.
안타깝게도 교수는 모든 도시 쌍을 조사한 뒤 기록을 모두 잃어버렸다. 남은 것은 대전환 년 각각의 베를란드 도로망 지도뿐이다.
교수가 가능한 모든 도시 쌍 , 에 대해 적었던 수를 복원하도록 도와라.
입력
첫 줄에 베를란드의 도시 수 과 대전환의 연도 수 가 주어진다().
이어서 각 연도의 도로망을 설명하는 개의 입력이 주어진다. 각 설명은 줄로 이루어지며, 각 줄에는 도로로 연결된 두 도시 와 가 주어진다(, ). 각 연도에서 모든 도시 쌍 사이에 경로가 하나뿐이라고 보장된다.
출력
줄에 걸쳐 각 줄마다 정수 개를 출력한다. 번째 줄의 번째 수는 , 일 때 교수가 기록한 수이다.
힌트
첫 번째 예제 테스트에서 베를란드에는 도시가 개 있다. 교수가 조사한 연도는 년이다. 첫 해의 도로망 지도는 왼쪽에, 둘째 해의 지도는 오른쪽에 있다.

, 인 쌍을 보자. 첫 해의 이동에서 교수는 도시 , , , 를 방문한다. 둘째 해의 이동에서는 도시 , , 를 방문한다. 모든 이동에서 방문한 도시는 , , 이므로 이 쌍에는 을 기록한다.
, 인 쌍을 보자. 첫 해의 이동은 도시 , 을 지난다. 둘째 해의 이동은 도시 , , 를 지난다. 모든 이동에서 방문한 도시는 과 이므로 이 쌍에는 를 기록한다.