Hòa lưới điện

Xem PDF

Nộp bài


Điểm: 20 (thành phần)
Thời gian: 1.0s
Bộ nhớ: 512M

Tác giả:
Dạng bài

Đất nước Byteland có \(N\) thành phố, \(M\) trạm phát điện, và \(E\) đường dây nối hai chiều. Mỗi đường dây sẽ nối hai thành phố với nhau, hoặc hai trạm phát điện với nhau, hoặc một trạm phát điện với một thành phố. Để dễ hình dung, ta có thể biểu diễn Byteland dưới dạng mô hình đồ thị vô hướng gồm \(N+M\) đỉnh và \(E\) cạnh. Các thành phố tương ứng với các đỉnh \(1\), \(2\),..., \(N\) và các trạm phát điện tương ứng với các đỉnh \(N+1\), \(N+2\),..., \(N+M\). Cạnh thứ \(i\) \((1\le i\le E)\) nối hai đỉnh \(U_i\) và \(V_i\).

Một thành phố được xem là đã hòa lưới điện nếu tồn tại một đường đi từ nó đến một trạm phát điện nào đó. Bạn hãy lập trình xử lý \(Q\) sự kiện giả lập, tại sự kiện \(i\) ta tiến hành phá hủy đường dây (cạnh) thứ \(X_i\) và cho biết số lượng thành phố hòa lưới điện còn lại là bao nhiêu. Lưu ý rằng một khi một đường dây bị phá hủy, nó sẽ không bao giờ được nối lại.

Input
  • Dòng đầu tiên chứa ba số nguyên dương \(N\), \(M\) và \(E\) \(\left(2\le N+M\le 2\times 10^5, 1\le E\le 5\times 10^5\right)\).
  • Dòng thứ \(i\) trong \(E\) dòng tiếp theo chứa hai số nguyên dương \(U_i\), \(V_i\) \((1\le U_i < V_i \le N+M)\).
  • Dòng tiếp theo chứa số nguyên dương \(Q\) \(\left(1\le Q\le \min\left(E, 5\times 10^5\right)\right)\).
  • Dòng thứ \(i\) trong \(Q\) dòng tiếp theo chứa số nguyên dương \(X_i\) \(\left(1\le X_i\le E\right)\). Dữ liệu đảm bảo tất cả các giá trị \(X_i\) đều không trùng nhau.
Output
  • Gồm \(Q\) dòng. Dòng thứ \(i\) ghi một số nguyên là số lượng thành phố hòa lưới điện còn lại.
Ví dụ
Sample input 01
5 5 10
2 3
4 10
5 10
6 9
2 9
4 8
1 7
3 6
8 10
1 8
6
3
5
8
10
2
7
Sample output 01
4
4
2
2
2
1