지진 피해 2

시간 제한1초메모리 제한128 MB

요약
무방향 그래프와 헛간에 도달할 수 없는 정점들이 주어질 때, 정확히 그 정점들만 정점 1과 분리되도록 제거해야 하는 최소 정점 수를 구한다.
난이도

어려움10점 중 8점

유형
그래프, BFS, 그리디, 구현
정답자
아직 제출이 없습니다

문제

Farmer John의 농장에 지진이 발생했습니다! 지진으로 일부 목초지가 손상되어 지나갈 수 없게 되었습니다. 놀랍게도 소들이 다니는 길(cowpath)은 하나도 손상되지 않았습니다.

농장은 11번부터 PP번까지 번호가 매겨진 PP개(1≤P≤30001 \le P \le 3000)의 목초지와, 이들을 잇는 CC개(1≤C≤200001 \le C \le 20000)의 방향 없는 길로 이루어져 있습니다. 길에는 11번부터 CC번까지 번호가 매겨져 있으며, ii번 길은 목초지 aia_i와 bib_i를 연결합니다(1≤ai≤P1 \le a_i \le P; 1≤bi≤P1 \le b_i \le P). 한 목초지를 자기 자신과 잇는 길이 있을 수도 있고, 두 목초지가 여러 개의 길로 연결될 수도 있습니다. 축사(barn)는 11번 목초지에 있습니다.

서로 다른 목초지에 있는 NN마리(1≤N≤P1 \le N \le P)의 소가 차례로 Farmer John에게 전화로 연락합니다. jj번째 소는 정수 reportjreport_j(2≤reportj≤P2 \le report_j \le P)를 보내는데, 이는 목초지 reportjreport_j는 손상되지 않았지만 그 목초지에서 축사로 돌아가는 모든 경로가 손상된 목초지를 지나기 때문에 축사로 돌아갈 수 없다는 뜻입니다.

모든 소의 보고가 끝난 뒤, 손상되었을 수 있는 목초지의 최소 개수를 구하세요. 축사(11번 목초지)와 보고된 모든 목초지는 손상되지 않았음이 보장됩니다.

입력

  • 첫째 줄: 공백으로 구분된 세 정수 PP, CC, NN.
  • 2…C+12 \dots C+1번째 줄: i+1i+1번째 줄은 ii번 길을 나타내는 두 정수 aia_i, bib_i를 담고 있습니다.
  • C+2…C+N+1C+2 \dots C+N+1번째 줄: C+1+jC+1+j번째 줄은 정수 하나 reportjreport_j를 담고 있습니다.

출력

  • 첫째 줄: 손상된 목초지의 최소 개수를 나타내는 정수 하나.

예제3

  1. 예제 1

    입력
    5 5 2
    1 2
    2 3
    3 5
    2 4
    4 5
    4
    5
    
    예상 출력
    1
    
  2. 예제 2

    입력
    3 2 1
    1 2
    2 3
    3
    
    예상 출력
    1
    
  3. 예제 3

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