얽힌 트리

분할 노드들의 숲이 주어질 때 각 분할 노드의 잎들이 연속되도록 잎 레이블을 배치하고, 사전순으로 가장 앞서는 수열을 골라 위치 질의에 답한다.

보통7트리DFS정렬그리디아직 제출이 없습니다시간 제한8초메모리 제한512 MB

문제

이시마쓰 전자의 개발 부서는 디스크와 저장 장치, 네트워크 장비, 휴대전화처럼 서로 다른 제품군을 하나씩 맡는다. 한 부서가 다루는 제품의 종류가 많아서 제품 관리 부서 직원은 새 제품을 어느 분류에 넣어야 할지 판단하기 어려웠다. 그래서 한 직원이 분류 다이어그램이라는 그림을 제안했다.

분류 다이어그램은 큰 종이 한 장에 이렇게 그린다. 종이 위쪽에는 개발 부서 이름을 적는다. 이것이 시작 노드다. 가운데에는 제품의 특징을 가르는 질문을 적는다. 이것이 분기 노드다. 아래쪽에는 분류 이름을 적는다. 이것이 끝 노드다. 시작 노드는 각각 분기 노드 하나 또는 끝 노드 하나와 이어지고, 분기 노드에서 아래로 내려가는 선에는 질문의 답을 적는다. 제품을 분류할 때는 그 제품을 만든 부서의 시작 노드에서 출발해 선을 따라 내려가며, 도착한 끝 노드에 적힌 이름이 그 제품의 분류다.

그림 자체는 알아보기 쉽지만 손으로 그린 다이어그램은 선이 여러 번 교차해서 지저분했다. 선이 하나도 교차하지 않는 깔끔한 다이어그램을 대신 그려 달라는 의뢰가 들어왔다.

질문의 내용은 무시하고 분류 이름 대신 11 이상 NN 이하의 정수 라벨을 쓴다. 분기 노드의 y좌표와 라벨 목록을 주면 다이어그램의 연결 관계가 정해진다. 이제 끝 노드를 왼쪽부터 11번, 22번, 차례로 NN번 위치까지 한 자리에 하나씩 놓는다. 선이 교차하지 않는 배치란 모든 분기 노드에 대해 그 아래에 매달린 끝 노드가 연속한 위치를 차지하는 배치를 말한다. 그런 배치가 여러 개이면 11번 위치부터 NN번 위치까지 읽은 라벨 수열이 사전순으로 가장 앞서는 배치 하나를 답으로 정한다.

질의는 위치 번호 하나를 준다. 그 위치에 놓인 끝 노드의 라벨을 답하면 된다.

입력

입력은 여러 개의 데이터 세트로 이루어진다. 각 데이터 세트의 형식은 다음과 같다.

N M Q
분기 노드 정보 1
분기 노드 정보 2
...
분기 노드 정보 M
질의 1
질의 2
...
질의 Q

첫 줄에는 끝 노드의 개수 NN, 분기 노드의 개수 MM, 질의의 개수 QQ가 주어진다. 이어서 MM개의 줄에 분기 노드 정보가 한 줄에 하나씩 주어지고, 각 줄의 형식은 다음과 같다.

Y L 라벨1 라벨2 ...

YY는 그 분기 노드의 y좌표이며 값이 작을수록 위쪽이다. LL은 라벨 목록의 길이이고, 그 뒤에 LL개의 끝 노드 라벨이 온다. 한 목록 안의 라벨은 서로 다르다.

연결 관계는 라벨 목록으로 정해진다. 끝 노드 라벨 ee에 대해, 목록에 ee가 들어 있는 분기 노드를 y좌표가 작은 것부터 나열한 것을 C(e)C(e)라 하자.

  • C(e)C(e)에서 이웃한 두 노드는 서로 연결된다. y좌표가 작은 쪽이 위, 큰 쪽이 아래다.
  • C(e)C(e)의 마지막 노드, 즉 y좌표가 가장 큰 노드는 끝 노드 ee와 연결된다.
  • C(e)C(e)가 비어 있으면 끝 노드 ee는 시작 노드와 바로 연결된다.
  • 위쪽의 어떤 분기 노드와도 연결되지 않은 분기 노드는 시작 노드와 연결된다.

한 분기 노드는 자기보다 위에 있는 분기 노드와 많아야 하나 연결된다. 그래서 다이어그램 전체는 끝 노드를 잎으로 하는 숲이 된다.

분기 노드 정보 다음에는 QQ개의 줄에 질의가 하나씩 주어진다. 각 질의는 끝 노드의 가로 위치이고 가장 왼쪽 위치가 11번이다.

제약은 다음과 같다.

  • 1N1000001 \le N \le 100000
  • 0MN10 \le M \le N - 1
  • 1Q10001 \le Q \le 1000, QNQ \le N
  • 0Y1090 \le Y \le 10^9, 한 데이터 세트 안에서 y좌표는 서로 다르다
  • 1L1 \le L, 라벨은 11 이상 NN 이하
  • 한 데이터 세트에서 LL의 합은 200000200000 이하
  • 질의는 11 이상 NN 이하
  • 데이터 세트는 100100개 이하이고, 전체 입력에서 NN의 합은 200000200000 이하, LL의 합은 500000500000 이하

N=M=Q=0N = M = Q = 0인 데이터 세트가 입력의 끝을 알린다. 이 데이터 세트는 처리하지 않는다.

출력

각 데이터 세트마다 QQ개의 줄을 출력한다. ii번째 줄에는 ii번째 질의가 가리키는 위치에 놓인 끝 노드의 라벨을 적는다. 배치는 선이 교차하지 않는 배치 가운데 라벨 수열이 사전순으로 가장 앞서는 것 하나를 쓴다.

각 데이터 세트의 출력 뒤에는 빈 줄을 하나 출력한다.