Đường đi của những kẻ ngốc
Berland có thành phố, được nối bởi con đường hai chiều sao cho giữa mỗi cặp thành phố có duy nhất một đường đi đơn (tức là đồ thị tạo thành một cây). Các con đường được đánh số từ tới theo thứ tự xuất hiện trong dữ liệu vào.
Có cặp người, cặp thứ gồm hai người sống ở thành phố và . Người thứ đi từ thành phố tới gặp người thứ ở thành phố theo đường đi đơn duy nhất trong cây.
Với mỗi con đường, hãy đếm xem có bao nhiêu người đã đi qua nó. Một con đường được tính nếu nó nằm trên đường đi đơn của ít nhất một trong hai người trong một cặp; cặp đóng góp giá trị cho mỗi con đường nằm trên đường đi từ tới (mỗi người đi qua đúng một lần).
Lưu ý: nếu thì không có con đường nào được sử dụng trong cặp đó.
Dữ liệu vào
- Dòng đầu chứa số nguyên — số thành phố.
- dòng tiếp theo, mỗi dòng chứa hai số nguyên (, ) mô tả con đường nối hai thành phố và .
- Dòng tiếp theo chứa số nguyên — số cặp người.
- dòng tiếp theo, mỗi dòng chứa hai số nguyên ().
Dữ liệu ra
In ra số nguyên cách nhau bởi khoảng trắng: số thứ là số người đã đi qua con đường thứ (theo thứ tự xuất hiện trong dữ liệu vào).
Ràng buộc
Ví dụ
| Input | Output | Giải thích |
|---|---|---|
| 5 1 2 1 3 2 4 2 5 2 1 4 3 5 |
2 1 1 1 | Cặp 1 đi từ 1 tới 4 qua đường 1 (1-2) và 3 (2-4). Cặp 2 đi từ 3 tới 5 qua đường 2 (1-3), 1 (1-2), 4 (2-5). Mỗi người trong cặp đi một lần nên đường 1 được dùng bởi hai người (một từ mỗi cặp). |
| 5 3 4 4 5 1 4 2 4 3 2 3 1 3 3 5 |
3 1 1 1 | Đường 1 (3-4) nằm trên cả ba đường đi , , nên có 3 người đi qua. Mỗi đường còn lại chỉ thuộc một đường đi nên đều bằng 1. |
Bình luận