Pháo Đài Lớn Nhất
Nộp bài giải
Điểm:
1,00 (OI)
Giới hạn thời gian:
2.0s
Python 3
5.0s
Giới hạn bộ nhớ:
256M
Đầu vào:
stdin
Đầu ra:
stdout
Tác giả:
Dạng bài
Ngôn ngữ cho phép
C++, Go, Java, Kotlin, Pascal, Python, Scratch
Cho một lưới ô vuông kích thước . Mỗi ô hoặc trống (ký hiệu .) hoặc là đầm lầy (ký hiệu X). Bạn cần xây dựng một pháo đài hình chữ nhật trên lưới này.
Pháo đài được xác định bởi một hình chữ nhật con , của lưới. Pháo đài chỉ sử dụng khung viền (border) dày 1 ô của hình chữ nhật — tức là tất cả các ô nằm trên hàng , hàng , cột , hoặc cột .
Pháo đài hợp lệ khi toàn bộ khung viền không chứa ô đầm lầy nào.
Hãy tìm diện tích lớn nhất (số ô trong hình chữ nhật , kể cả phần bên trong) của một pháo đài hợp lệ. Nếu không có pháo đài nào hợp lệ, in ra .
Lưu ý: Một ô đơn (hình chữ nhật ) hoặc một hàng/cột đơn ( hay ) cũng là pháo đài hợp lệ nếu toàn bộ các ô đó trống.
Dữ liệu vào
- Dòng đầu: hai số nguyên và .
- dòng tiếp theo: mỗi dòng gồm ký tự
.hoặcXmô tả lưới.
Dữ liệu ra
In ra một số nguyên duy nhất — diện tích lớn nhất của pháo đài hợp lệ.
Ràng buộc
Ví dụ
| Input | Output | Giải thích |
|---|---|---|
| 5 6 ...... ..X..X X..X.. ...... ..X... |
16 | Hình chữ nhật từ hàng 1..4, cột 2..5 có kích thước . Hàng 1 và hàng 4 (cột 2..5) đều trống; cột 2 và cột 5 (hàng 1..4) đều trống — khung viền không có ô đầm lầy. |
| 2 2 .. .. |
4 | Toàn bộ lưới trống, diện tích tối đa là . |
Bình luận