Gấu và lưới hình vuông

Đề bài

Mô tả

Cho một lưới ô vuông kích thước n×n. Mỗi ô của lưới là trống (kí hiệu .) hoặc bị chặn (kí hiệu X).

Hai ô trống được gọi là kề trực tiếp nếu chúng có chung một cạnh. Hai ô được gọi là liên thông nếu tồn tại một dãy các ô trống bắt đầu từ ô này và kết thúc ở ô kia sao cho hai ô liên tiếp trong dãy luôn kề trực tiếp. Một thành phần liên thông là tập các ô trống mà bất kỳ hai ô trong tập đều liên thông với nhau và không ô nào trong tập liên thông với ô trống nào ngoài tập đó.

Bạn được phép chọn đúng một hình vuông kích thước k×k nằm hoàn toàn trong lưới và biến mọi ô bị chặn bên trong hình vuông đó thành ô trống. (Bạn được phép chọn hình vuông không cần thay đổi gì cả nếu mọi ô trong đó vốn đã trống.)

Hãy xác định kích thước lớn nhất của một thành phần liên thông trong lưới sau khi thực hiện thao tác trên.

Dữ liệu vào

  • Dòng đầu chứa hai số nguyên nk.
  • n dòng tiếp theo, mỗi dòng gồm n kí tự . hoặc X mô tả lưới.

Dữ liệu ra

In ra một số nguyên duy nhất — kích thước lớn nhất có thể của thành phần liên thông sau khi thực hiện thao tác.

Ràng buộc

  • 1kn500.

Ví dụ

Input Output Giải thích
5 2
..XXX
XX.XX
X.XXX
X...X
XXXX.
10 Chọn hình vuông 2×2 ở góc trên trái (hàng 1–2, cột 1–2) sẽ tạo ra một thành phần liên thông kích thước 10.
5 3
.....
.XXX.
.XXX.
.XXX.
.....
25 Chọn hình vuông 3×3 phủ toàn bộ khối X ở giữa biến cả lưới thành ô trống — toàn bộ 25 ô tạo thành một thành phần.

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.47 awk 1.3.4 gcc 16.2.0 dotnet 10.0.400 g++ 16.2.0 g++-themis 16.2.0 g++17 16.2.0 g++20 16.2.0 g++23 16.2.0 clang++ 22.1.8 dmd 2.113.0 dart 3.13.2 gforth 0.7.3 gfortran 12.2.0 go 1.27.0 groovyc 5.1.1 javac 25.0.4 node 26.8.1 julia 1.12.7 kotlinc 2.4.10 lean 4.33.1 sbcl 2.2.9 lua 5.4.9 nim 2.2.10 fpc 3.2.2 fpc-themis 3.2.2 perl 5.36.0 php 8.5.10 pike 8.0 swipl 9.0.4 pypy3 7.3.23 python3 3.14.7 racket 8.7 ruby 4.0.6 rustc 1.98.0 csc 5.3.0 ctoj-scratch 0.0.1 sed 4.9 swiftc 6.3.3 tclsh 8.6 bun 1.4.0 deno 2.9.6 v 0.5.2 zig 0.16.0