아직 만들고 있는 페이지입니다.

이 페이지는 아직 만드는 중입니다. 보이는 내용은 바뀔 수 있습니다.

도시 발전

시간 제한3초메모리 제한512 MB

난이도

아직 분류되지 않았습니다

정답자
아직 제출이 없습니다

문제

바이츠버그 시는 역사 지구와 새 지구로 나뉩니다. 역사 지구는 n−1n-1개의 대로로 연결된 nn개의 광장으로 이루어진 트리입니다. 광장에는 1부터 nn까지 연속된 번호가 붙어 있습니다. 시의 중심 광장인 정점 1이 트리의 루트입니다.

처음에는 역사 지구만 있습니다. 시는 매년 다음과 같이 발전합니다. 그해 초에 광장이 mm개 있다고 합시다.

  • 역사 지구의 광장 ff와, 이미 지어진 광장 tt(역사 지구 또는 새 지구의 광장)를 고릅니다.
  • 역사 지구에서 ff를 루트로 하는 부분트리 TT 전체를 새 지구로 복사합니다. 그다음 복사된 부분트리의 루트를 대로로 광장 tt에 잇습니다. 새로 지어진 모든 광장과 대로는 새 지구에 속합니다. 역사 지구는 바뀌지 않습니다.
  • 부분트리 TT의 광장이 kk개라고 합시다. 새 광장에는 m+1m+1부터 m+km+k까지 번호가 붙습니다. TT에서 광장 ii의 번호가 광장 jj의 번호보다 작으면, ii에 대응하는 광장 i′i'의 번호는 jj에 대응하는 광장 j′j'의 번호보다 작습니다.

역사 지구의 구성과 yy년 동안의 발전 기록이 주어집니다. 두 광장 사이의 최단 거리를 구하는 질의에 답하세요.

입력

첫 줄에 정수 nn, yy, qq가 주어집니다. 각각 역사 지구의 광장 수, 새 지구를 지은 연수, 질의 수입니다 (1≤n,y,q≤1051 \le n,y,q \le 10^5).

다음 n−1n-1개의 줄에는 역사 지구에서 대로로 연결된 두 광장의 번호 aa와 bb가 주어집니다 (1≤a,b≤n1 \le a,b \le n; a≠ba \ne b). 광장과 대로는 트리를 이룬다고 보장됩니다. 루트인 중심 광장의 번호는 1입니다.

다음 yy개의 줄에는 정수 ff와 tt가 주어집니다. ff는 역사 지구에서 복사할 원래 광장의 번호이고, tt는 복사본을 연결할 광장의 번호입니다 (1≤f≤n1 \le f \le n; t≥1t \ge 1, 그리고 tt는 해당 연도 초의 광장 수를 넘지 않습니다).

다음 qq개의 줄에는 거리를 구할 두 광장의 번호 ii와 jj가 주어집니다. yy년 건설 후의 전체 광장 수를 MM이라 하면, 1≤i,j≤M1 \le i,j \le M입니다.

출력

각 질의에 대해 해당하는 두 광장 사이의 최단 거리를 나타내는 정수 하나를 출력합니다.

예제1

  1. 예제 1

    입력
    5 2 4
    1 3
    1 4
    3 2
    3 5
    3 4
    4 2
    5 9
    1 8
    6 3
    4 7
    
    예상 출력
    3
    3
    4
    1