Thành phố liên thông mạnh

Đề bài

Mô tả

Một thành phố có n con đường nằm ngang (đông–tây) cắt m con đường thẳng đứng (bắc–nam), tạo thành một lưới giao lộ n×m. Để cải thiện giao thông, thị trưởng quyết định biến mọi con đường thành đường một chiều.

  • Mỗi đường ngang đi theo một trong hai hướng: chỉ từ tây sang đông, hoặc chỉ từ đông sang tây.
  • Mỗi đường dọc đi theo một trong hai hướng: chỉ từ bắc xuống nam, hoặc chỉ từ nam lên bắc.

Tại mỗi giao lộ, có thể chuyển từ đường ngang sang đường dọc hoặc ngược lại.

Cho cấu hình hướng các con đường, hãy kiểm tra xem từ một giao lộ bất kỳ có thể đi đến mọi giao lộ khác hay không (tức là đồ thị có hướng tạo bởi các đoạn đường có liên thông mạnh hay không).

Dữ liệu vào

  • Dòng đầu chứa hai số nguyên nm.
  • Dòng thứ hai chứa một xâu độ dài n gồm các ký tự <>, biểu diễn hướng các đường ngang (liệt kê từ bắc xuống nam). Ký tự thứ i bằng < nghĩa là đường ngang thứ i đi từ đông sang tây, bằng > nghĩa là đi từ tây sang đông.
  • Dòng thứ ba chứa một xâu độ dài m gồm các ký tự ^v, biểu diễn hướng các đường dọc (liệt kê từ tây sang đông). Ký tự thứ j bằng ^ nghĩa là đường dọc thứ j đi từ nam lên bắc, bằng v nghĩa là đi từ bắc xuống nam.

Dữ liệu ra

In ra YES nếu từ giao lộ bất kỳ có thể đi đến mọi giao lộ khác, ngược lại in ra NO.

Ràng buộc

  • 2n,m20

Ví dụ

Input Output Giải thích
3 3
><>
v^v
NO Có những giao lộ không thể đi đến lẫn nhau (ví dụ giao lộ góc dưới-trái không có cạnh đi ra).
4 6
<><>
v^v^v^
YES Các hướng đường tạo thành một mạng liên thông mạnh.
2 2
<>
v^
YES Bốn giao lộ tạo thành một chu trình theo chiều kim đồng hồ.

Bình luận

Không có bình luận tại thời điểm này.

gnatmake 12.2.0 a68g 3.1.2 nasm 2.16.1 as_x64 2.46 awk 1.3.4 gcc 16.1.0 csc 6.12.0.200 g++ 16.1.0 g++-themis 16.1.0 g++17 16.1.0 g++20 16.1.0 g++23 16.1.0 clang++ 22.1.6 dmd 2.112.0 dart 3.12.1 gforth 0.7.3 gfortran 12.2.0 go 1.26.3 groovyc 5.0.6 javac 25.0.3 node 26.2.0 kotlinc 2.3.21 sbcl 2.2.9 lua 5.4.8 nim 2.2.10 fpc 3.2.2 fpc-themis 3.2.2 perl 5.36.0 php 8.5.6 pike 8.0 pypy3 7.3.23 python3 3.14.5 racket 8.7 ruby 4.0.5 rustc 1.96.0 csc 5.3.0 ctoj-scratch 0.0.1 sed 4.9 tclsh 8.6 bun 1.3.14 deno 2.8.1 v 0.5.1 zig 0.16.0