CEOI 2017 - One-Way Streets

Xem PDF



Dạng bài
Ngôn ngữ cho phép
Assembly, Awk, C, C#, C++, Clang, Cobol, D, Groovy, Haskell, JS, Java, Kotlin, Lua, Node JS, OCaml, ObjectiveC, PHP, Pascal, Perl, Prolog, Pypy, Pypy 3, Python, Ruby, Rust, Scala, Scratch, Swift
Điểm: 2000 (p) Thời gian: 3.0s Bộ nhớ: 256M Input: bàn phím Output: màn hình

Ngày xưa, có một quốc gia gồm \(n\) thành phố và \(m\) con đường hai chiều nối chúng. Khi các phương tiện giao thông ngày càng lớn và nhanh hơn, đường trở nên quá hẹp để hai xe đi ngược chiều tránh nhau. Chính phủ quyết định đổi mỗi con đường thành đường một chiều.

Sau khi đổi chiều, một số cặp thành phố trước đây đi lại được có thể không còn nối được theo hướng cần thiết. Chính phủ đưa ra \(p\) cặp thành phố quan trọng; với mỗi cặp \((x_i,y_i)\), cần có đường đi có hướng từ \(x_i\) đến \(y_i\). Đề bài đảm bảo luôn tồn tại cách định hướng thỏa mãn tất cả yêu cầu.

Với một số con đường, hướng đi bị bắt buộc trong mọi cách định hướng hợp lệ. Với những con đường còn lại, có thể tồn tại một cách định hướng hợp lệ khi đi từ thành phố đầu đến thành phố cuối của đường, và cũng có thể tồn tại một cách khác khi đi theo chiều ngược lại.

Hãy xác định trạng thái của từng con đường:

  • R nếu mọi cách định hướng hợp lệ đều phải cho xe đi từ thành phố đầu tiên đến thành phố thứ hai của con đường đó.
  • L nếu mọi cách định hướng hợp lệ đều phải cho xe đi từ thành phố thứ hai đến thành phố đầu tiên.
  • B nếu có ít nhất một cách định hướng hợp lệ theo mỗi chiều.

Dữ liệu vào

Dòng đầu chứa hai số nguyên \(n,m\) (\(1\le n,m\le100000\)), lần lượt là số thành phố và số con đường.

Mỗi dòng trong \(m\) dòng tiếp theo chứa hai số nguyên \(a_i,b_i\) (\(1\le a_i,b_i\le n\)), cho biết có con đường nối thành phố \(a_i\) và \(b_i\). Có thể có nhiều con đường nối cùng một cặp thành phố; một con đường cũng có thể nối một thành phố với chính nó.

Dòng tiếp theo chứa số nguyên \(p\) (\(1\le p\le100000\)), là số cặp thành phố cần liên thông theo hướng.

Mỗi dòng trong \(p\) dòng tiếp theo chứa hai số nguyên \(x_i,y_i\) (\(1\le x_i,y_i\le n\)), yêu cầu tồn tại đường đi có hướng từ \(x_i\) đến \(y_i\).

Dữ liệu ra

In một xâu gồm \(m\) ký tự. Ký tự thứ \(i\) là trạng thái của con đường thứ \(i\) theo quy tắc trong đề bài.

Ví dụ

Ví dụ

Input
5 6
1 2
1 2
4 3
2 3
1 3
5 1
2
4 5
1 3
Output
BBRBBL

Giải thích

Con đường thứ năm nối thành phố \(1\) và \(3\) có thể được định hướng theo cả hai chiều trong các cách định hướng hợp lệ khác nhau. Chẳng hạn, hai xâu định hướng hợp lệ tương ứng là LLRLRL và RLRRLL.

Phân nhóm

  1. \(30\) điểm: \(n,m\le1000\) và \(p\le100\).
  2. \(30\) điểm: \(p\le100\).
  3. \(40\) điểm: Không có ràng buộc bổ sung.

Bình luận

Mới nhất
Tải bình luận...

Không có bình luận nào.

Kỳ thi: