DFS trên mê cung

Xem PDF



Tác giả:
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, Output, PHP, Pascal, Perl, Prolog, Pypy, Pypy 3, Python, Ruby, Rust, Scala, Scratch, Swift
Điểm: 1300 (p) Thời gian: 1.0s Bộ nhớ: 512M Input: bàn phím Output: màn hình

Bài này là bản dễ hơn của: CSES - Labyrinth | Mê cung
Bạn được cho bản đồ của một mê cung, và nhiệm vụ của bạn là tìm đường đi từ A đến B. Bạn có thể đi một trong bốn hướng trái, phải, lên và xuống.

Input

  • Dòng đầu vào đầu tiên có hai số nguyên \(n\)\(m\): chiều cao và chiều rộng của bản đồ.
  • Sau đó, có \(n\) dòng gồm \(m\) ký tự mô tả mê cung. Mỗi ký tự là . (sàn), # (tường - không đi vào ô này), A (bắt đầu) hoặc B (kết thúc).

Output

  • Đầu tiên in YES nếu có một đường đi và NO ngược lại.
  • Nếu có một đường đi, in độ dài của đường đi đó và mô tả của nó dưới dạng một xâu bao gồm các ký tự L (trái), R (phải), U (lên) và D (xuống). Bạn có thể in bất kỳ giải pháp hợp lệ nào.

Constraints

  • \(1 \leq n, m \leq 1000\)

Example

Sample input

5 8
########
#.A#...#
#.##.#B#
#......#
########

Sample output

YES
9
LDDRRRRRU

Bình luận

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

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