Đa dạng sinh học

Xem dạng PDF

Gửi bài giải

Điểm: 1,00 (OI)
Giới hạn thời gian: 1.0s
Giới hạn bộ nhớ: 256M
Input: stdin
Output: stdout

Dạng bài

Cho đồ thị vô hướng gồm ~N~ đỉnh và ~M~ cạnh. Mỗi cạnh nối hai đỉnh khác nhau, và giữa hai đỉnh có nhiều nhất một cạnh.

Có ~K~ đỉnh đặc biệt.

Một cạnh được gọi là xung yếu nếu khi xóa cạnh đó khỏi đồ thị, số thành phần liên thông tăng lên.

Một cạnh được gọi là sinh tử nếu:

  • nó là một cạnh xung yếu, và
  • sau khi xóa cạnh đó, tồn tại ít nhất hai đỉnh đặc biệt nằm ở hai thành phần liên thông khác nhau.

Yêu cầu

Đếm số cạnh sinh tử trong đồ thị.

Dữ liệu

  • Dòng ~1~ chứa ba số nguyên ~N, M, K~.
  • Dòng ~2~ chứa ~K~ số nguyên phân biệt là chỉ số các đỉnh đặc biệt.
  • ~M~ dòng tiếp theo, mỗi dòng chứa hai số nguyên ~u, v~, mô tả một cạnh vô hướng nối ~u~ và ~v~.

Kết quả

In ra một số nguyên duy nhất là số cạnh sinh tử.

Ví dụ

Ví dụ 1

Input

9 9 3
1 5 9
1 2
2 3
2 4
3 4
1 6
4 5
6 7
6 8
8 9

Output

3

Giải thích

Ví dụ 1

Các cạnh xung yếu là:

~(1,2), (1,6), (4,5), (6,8), (8,9)~.

Trong đó:

  • Xóa ~(1,2)~ tách các đỉnh đặc biệt thành hai phía ~{1,9}~ và ~{5}~.
  • Xóa ~(4,5)~ tách các đỉnh đặc biệt thành hai phía ~{5}~ và ~{1,9}~.
  • Xóa ~(8,9)~ tách các đỉnh đặc biệt thành hai phía ~{9}~ và ~{1,5}~.

Vì vậy có đúng ~3~ cạnh sinh tử.

Ràng buộc và chấm điểm

Ràng buộc
  • ~1 \le N, M, K \le 10^5~.
  • ~1 \le u, v \le N~.
Chấm điểm
  • Subtask ~1~: ~25\%~ số điểm, ~N \le 20~, ~M \le 30~, ~K \le 5~, đồ thị liên thông.
  • Subtask ~2~: ~30\%~ số điểm, ~N \le 1000~, ~M \le 2000~, ~K \le 100~, đồ thị liên thông.
  • Subtask ~3~: ~45\%~ số điểm, đồ thị có thể không liên thông.

Bình luận

Hãy đọc nội quy trước khi bình luận.


Không có bình luận tại thời điểm này.