만드는 중입니다

아직 만드는 중이라 바뀔 수 있습니다

불편을 끼쳐 드려 죄송합니다

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

요약
트램 노선이 정류장 집합으로 주어질 때, 노선이 하나씩 중단될 때마다 서로 도달 가능한 정류장 쌍 사이의 최대 환승 횟수를 구합니다.
난이도

어려움10점 중 8점

유형
그래프, 최단 경로, 유니온 파인드
정답자
아직 제출이 없습니다

문제

크라쿠프의 야기엘론스키 대학교에서 공부하는 데는 장점과 단점이 있습니다. 장점은 야기엘론스키 대학교가 있다는 것입니다. 단점은 크라쿠프입니다. 더 정확히 말하면, 트램 선로 공사에 계속 시달려야 한다는 점입니다. 처음에 대중교통망에는 여러 개의 트램 노선이 있습니다. 그 뒤 노선 하나가 운행 중지되고, 다시 다른 노선이 중지되며, 이런 식으로 이어집니다. 크라쿠프에는 철칙이 있습니다. 이미 운행 중지된 노선이 운행을 재개하기 전에는, 반드시 다른 노선을 먼저 중지해야 합니다. 아직 중지되지 않은 노선도 남아 있습니다. 당신은 전차에 앉아 있고, 대학교로 가는 직통 노선이 방금 사라져 짜증이 납니다. 창밖을 보며 생각합니다. 나는 이 도시에서 가장 운이 나쁜 승객일까? 아니면 목적지에 가려고 환승을 더 많이 해야 하는 사람이 어딘가에 있을까? 더 정확히 말하면, 노선 l0,…,lcl_0, \ldots, l_c가 존재하여 l0l_0이 정거장 AA에 서고, lcl_c가 정거장 BB에 서며, 모든 0≤i<c0 \leq i < c에 대해 lil_i와 li+1l_{i+1}이 모두 서는 정거장이 있을 때, 정거장 BB는 정거장 AA에서 cc번 환승으로 도달할 수 있습니다. 각 시점마다, 정거장 쌍 (A,B)(A, B) 중에서 BB가 AA에서 cc번 환승으로 도달 가능하면서, 어떤 c′<cc' < c번 환승으로도 도달할 수 없는 경우의 cc 최댓값을 구합니다. 정거장 쌍에 따라서는 아예 오갈 수 없을 수도 있습니다. 위 정의에 따라 이런 쌍은 분석에서 제외합니다. 그런 정거장 사이를 이동하려는 사람은 어차피 우버를 탈 것이라고 봅니다.

입력

첫 줄에 테스트 케이스의 개수 zz (1≤z≤351 \leq z \leq 35)가 주어집니다. 각 테스트 케이스의 첫 줄에는 정거장 수 nn과 노선 수 kk가 주어집니다 (2≤n,k≤7502 \leq n, k \leq 750). 정거장은 1부터 nn까지, 노선은 1부터 kk까지 번호가 매겨져 있습니다. 이어서 kk개의 줄이 주어집니다. ii번째 줄은 ii번 노선의 경로를 나타냅니다. 각 줄은 rir_i (2≤ri≤n2 \leq r_i \leq n)로 시작하고, 이어서 노선이 서는 서로 다른 정거장 번호 rir_i개 ai,ja_{i,j} (1≤ai,j≤n1 \leq a_{i,j} \leq n)가 주어집니다. 모든 트램 노선은 양방향으로 운행합니다. 다음 줄에는 운행 중지된 노선의 수 ss (1≤s≤k−11 \leq s \leq k-1)가 주어집니다. 이어서 ss개의 줄에 노선이 운행 중지되는 순서대로 노선 번호 sis_i (1≤si≤k1 \leq s_i \leq k)가 주어집니다. 한 노선은 최대 한 번만 운행 중지됩니다. 모든 테스트 케이스에서 nn의 합과 kk의 합은 각각 1000을 넘지 않습니다.

출력

각 테스트 케이스마다 s+1s+1개의 줄을 출력합니다. 각 줄에는 정수 하나를 출력합니다. i+1i+1번째 줄에는 ii번째 운행 중지 이후 필요한 최대 환승 횟수를 출력합니다. 첫 줄에는 운행 중지가 없을 때의 답을 출력합니다.

힌트

처음에는 예를 들어 정거장 4에서 5로 (또는 그 반대로) 이동할 때 환승이 한 번 필요합니다. 노선 2를 타고 노선 1로 갈아타면 이동할 수 있습니다. 환승이 두 번 이상 필요한 정거장 쌍은 없습니다. 노선 1이 제거되면 정거장 1에서 3으로 (또는 그 반대로) 이동하는 데 환승이 두 번 필요합니다. 노선 1과 4가 제거되면 서로 도달할 수 있는 정거장 쌍은 (1, 4)와 (2, 3)뿐이며, 두 경우 모두 환승이 필요하지 않습니다. 노선 1, 4, 3이 제거되면 서로 도달할 수 있는 정거장 쌍은 (1, 4) 하나뿐입니다. 이 정거장들 사이에는 환승이 필요하지 않습니다.

예제1

  1. 예제 1

    입력
    1
    5 4
    3 1 3 5
    2 1 4
    2 2 3
    2 2 4
    3
    1
    4
    3
    
    예상 출력
    1
    2
    0
    0