Dựng đồ thị
Xem dạng PDF
Gửi bài giải
Điểm:
150,00 (OI)
Giới hạn thời gian:
1.0s
Giới hạn bộ nhớ:
256M
Input:
stdin
Output:
stdout
Tác giả:
Dạng bài
Ngôn ngữ cho phép
C++, Python
Dựng đồ thị
Mô tả và yêu cầu
GRAPH
Người ta khởi tạo một đồ thị có hướng gồm 109 đỉnh các đỉnh được đánh số từ 1 tới
109 , ban đầu đồ thị không có cung nào. Người ta thêm lần lượt các cung vào đồ thị bởi câu
lệnh dạng add(u, v), nghĩa là thêm một cung nối từ đỉnh u tới đỉnh v trên đồ thị.
Cho trước 2 đỉnh s và t, hãy cho biết số thứ tự của lệnh add đầu tiên mà sau thời điểm
thực hiện lệnh add đó đỉnh s có thể đi tới được đỉnh t theo một số cung của đồ thị.
Dữ liệu vào
Dòng đầu chứa 3 số nguyên m ≤ 105, s, t (s ≠ t)
M dòng tiếp theo, mỗi dòng chứa 2 số nguyên u, v thế hiện lệnh add(u, v).
Dữ liệu ra
Ghi trên 1 dòng là kết quả của bài toán. Nếu không tồn tại kết quả thỏa mãn, in ra
một số 0.
Ví dụ
GRAPH.INP GRAPH.OUT
5 1 5 4
1 2
3 5
3 1
2 3
2 4
Bình luận