[Beginner Free Contest 55] ROOT

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
Ngôn ngữ cho phép
C++, Pascal, PyPy, Python

Peter kể rằng cậu ấy có một mô hình cây (có gốc) đặc biệt: từ một nút chỉ có thể đi xuống các nút thấp hơn nó (các nút trong cây con của nó). Tuy nhiên trong lúc chuyển chỗ mô hình này, Peter đã vô tình vấp ngã làm xáo trộn mô hình, chỉ còn biết các cạnh của cây mà không biết gốc.

Peter chỉ nhớ một vài đặc điểm của mô hình, đặc điểm thứ ~i~ cho biết từ nút ~u_i~ có thể đi đến nút ~v_i~. Peter không cần xác định chính xác hình dạng ban đầu của cây, chỉ cần biết được nút nào là gốc của cây. Hãy giúp Peter xác định xem có bao nhiêu nút có khả năng làm gốc của cây.

Dữ liệu

  • Dòng đầu tiên chứa 2 số nguyên dương ~n, m~ ~(1 \le n, m \le 10^5)~ lần lượt là số lượng nút của cây và số đặc điểm mà Peter nhớ.

  • ~n - 1~ dòng tiếp theo, dòng thứ ~i~ chứa 2 số nguyên dương ~a_i~ và ~b_i~ ~(1 \le a_i, b_i \le n)~, cho biết có một cạnh nối giữa ~a_i~ và ~b_i~.

  • ~m~ dòng tiếp theo, dòng thứ ~i~ chứa 2 số nguyên dương ~u_i~ và ~v_i~ ~(1 \le u_i, v_i \le n)~, cho biết có đường đi từ nút ~u_i~ đến nút ~v_i~.

Kết quả

  • In ra một số duy nhất là số nút có khả năng làm gốc của cây.

Dữ liệu đảm bảo rằng có ít nhất một nút có thể làm gốc.

Ví dụ

Sample Input 1

7 2
2 3
3 5
4 6
1 2
4 7
2 4
2 5
2 6

Sample Output 1

2

Sample Input 2

7 1
1 2
3 6
2 5
3 7
2 4
1 3
2 3

Sample Output 2

3

Giải thích

  • Ở ví dụ thứ nhất, có thể chọn các nút 1, 2.

  • Ở ví dụ thứ hai, có thể chọn các nút 2, 4, 5.

Chấm điểm

  • Subtask 1 (50% số test): ~n, m \le 1000~.

  • Subtask 2 (50% số test): không có ràng buộc gì thêm.


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.