Ninja và hẻm núi
Một ninja đang đứng dưới đáy một hẻm núi sâu, hẻm núi gồm hai vách đá song song thẳng đứng, mỗi vách cao mét. Mỗi vách được chia thành ô vuông cao mét và đánh số từ (dưới cùng) đến (trên cùng). Một số ô là an toàn (ninja có thể đứng trên đó), số khác là nguy hiểm (có gai, không thể đứng).
Ban đầu ninja đứng ở ô số của vách trái (ô này được đảm bảo là an toàn). Tại mỗi giây, ninja thực hiện đúng một trong ba hành động sau:
- Leo lên ô liền trên (vị trí cùng vách).
- Leo xuống ô liền dưới (vị trí cùng vách).
- Nhảy sang vách đối diện và lên cao thêm ô (vị trí , đổi vách).
Sau khi ninja đi xong, mực nước trong hẻm núi dâng lên mét (ban đầu mực nước ở mép dưới ô số ). Ninja không được đứng trên ô đã bị nước phủ: nói cách khác, sau khi ninja thực hiện hành động thứ thì các ô có số nhỏ hơn hoặc bằng đã bị ngập, ninja phải ở trên một ô có số lớn hơn .
Nếu ninja di chuyển tới một ô có số lớn hơn thì coi như đã thoát khỏi hẻm núi.
Hỏi ninja có thể thoát ra hay không?
Dữ liệu vào
- Dòng đầu chứa hai số nguyên và () — chiều cao của hẻm núi và độ cao mỗi cú nhảy.
- Dòng thứ hai là một xâu độ dài mô tả vách trái: ký tự thứ là
Xnếu ô thứ nguy hiểm và-nếu ô an toàn. - Dòng thứ ba mô tả vách phải theo định dạng tương tự.
Đảm bảo ô thứ của vách trái là an toàn.
Dữ liệu ra
In ra YES nếu ninja có thể thoát khỏi hẻm núi, ngược lại in NO.
Ràng buộc
- .
- Mỗi xâu mô tả vách chỉ chứa các ký tự
Xvà-.
Ví dụ
| Input | Output | Giải thích |
|---|---|---|
| 7 3 ---X--X -X--XX- |
YES | Ninja nhảy sang vách phải (lên ô ), leo xuống ô , nhảy sang vách trái (lên ô ), nhảy lần nữa lên ô — thoát. |
| 6 2 --X-X- X--XX- |
NO | Không tồn tại chiến lược nào để ninja thoát trước khi bị nước nhấn chìm. |
Bình luận