Khách sạn
View as PDF Time limit: 2.0s , Memory limit: 512M , Points: 100 (partial)
Đất nước có tổng cộng thành phố và
con đường hai chiều độ dài
nối giữa chúng sao cho xuất phát từ một thành phố có thể đi đến bất kỳ thành phố khác. Mỗi thành phố có xây dựng một khách sạn.
Malnar ghé thăm đất nước và đã dự tính ở lại khách sạn thuộc một trong thành phố. Ngoài ra, Malnar còn lưu lại khoảng cách ngắn nhất từ khách sạn đến các thành phố khác. Tuy nhiên, vì tuổi đã cao nên Malnar lại không nhớ chính xác đã lựa chọn khách sạn thuộc thành phố nào, mà chỉ lưu lại một vài thông tin của danh sách các khoảng cách ngắn nhất từ khách sạn đến các thành phố khác.
Dựa trên thông tin của danh sách, bạn hãy giúp Malnar xác định các khách sạn ở các thành phố nào có thể lựa chọn.
Input
- Dòng đầu tiên chứa hai số nguyên
và
.
dòng tiếp theo, dòng thứ
chứa hai số nguyên
và
mô tả đường nối giữa hai thành phố
và
. Có tối đa một con đường nối giữa hai thành phố.
- Dòng cuối cùng chứa
số nguyên, số nguyên thứ
hoặc là một giá trị nguyên
biểu thị khoảng cách ngắn nhất từ khách sạn đến thành phố
, hoặc là giá trị
biểu thị thông tin không còn được lưu lại đối với thành phố này.
Output
- Dòng đầu tiên in ra số lượng thành phố thỏa mãn. Dòng thứ hai in ra danh sách các thành phố thỏa mãn theo thứ tự tăng dần.
Samples
Sample Input 1
7 6
1 2
1 3
3 4
3 5
3 6
5 7
2 -1 -1 -1 -1 -1 3
Sample Output 1
2
4 6
Sample Input 2
6 6
1 2
2 3
3 4
4 5
5 6
6 1
2 -1 -1 1 -1 -1
Sample Output 2
2
3 5
Sample Input 3
4 3
1 2
2 3
3 4
1 -1 -1 1
Sample Output 3
0
Scoring
- Subtask
với
số điểm:
- Subtask
với
số điểm:
- Subtask
với
số điểm:
- Subtask
với
số điểm: Không còn ràng buộc gì thêm
Clarification
- Trong ví dụ đầu tiên, khoảng cách từ thành phố
đến thành phố
và
lần lượt là
và
, vì vậy có thể lựa chọn khách sạn ở thành phố
. Tương tự với thành phố
.
Comments