Cáo và Chữ Thập
Đề bài
Mô tả
Cho một bảng vuông kích thước ô. Mỗi ô chứa một trong hai ký tự: dấu chấm . (ô trống) hoặc dấu thăng # (ô được đánh dấu).
Một hình chữ thập gồm đúng ô tạo thành hình dấu cộng: một ô trung tâm cùng với bốn ô kề nó theo hướng trên, dưới, trái, phải.
Ta muốn phủ toàn bộ các ô # bằng một số hình chữ thập (có thể là hình) sao cho:
- Mỗi hình chữ thập phủ đúng ô đều mang ký tự
#. - Mỗi ô
#phải thuộc về đúng một hình chữ thập. - Không có hai hình chữ thập nào phủ chung một ô.
Hãy xác định có thể phủ được như vậy hay không.
Dữ liệu vào
- Dòng đầu chứa số nguyên : kích thước bảng.
- dòng tiếp theo, mỗi dòng gồm ký tự mô tả một hàng của bảng (mỗi ký tự là
.hoặc#).
Dữ liệu ra
In ra YES nếu có thể phủ tất cả các ô # bằng các hình chữ thập theo yêu cầu, ngược lại in ra NO.
Ràng buộc
Ví dụ
| Input | Output | Giải thích |
|---|---|---|
| 5 .#... ####. .#### ...#. ..... |
YES | Có thể vẽ được hai hình chữ thập phủ hết mọi ô #. |
| 4 #### #### #### #### |
NO | Có ô #, không chia hết cho nên không thể phủ. |
| 3 ... ... ... |
YES | Không có ô # nào, phủ bằng hình chữ thập. |
Bình luận