Biến đổi bảng
Đề bài
Mô tả
Cho một bảng hình chữ nhật kích thước ô vuông kích thước đơn vị. Các dòng được đánh số từ đến , từ trên xuống dưới. Các cột được đánh số từ đến , từ trái qua phải.
Mỗi ô của bảng hoặc được để trống hoặc chứa một ký tự lấy từ tập gồm các chữ số từ 0 đến 9 và các chữ cái la tinh in hoa từ A đến Z. Hai ô chứa cùng một ký tự được gọi là giống nhau. Mỗi ký tự của tập xuất hiện ở không quá ô trong bảng.
Hai ô giống nhau có thể xoá được nếu chúng có cạnh chung hoặc có thể nối các tâm (giao điểm của hai đường chéo) của chúng với nhau bằng một đường gấp khúc gồm không quá đoạn thẳng độ dài nguyên, mỗi đoạn song song với cạnh của bảng và ngoại trừ hai ô cần xoá, đường gấp khúc chỉ qua các ô trống hay nằm ngoài bảng. Các ô bị xoá trở thành ô trống. Mỗi lần xoá một cặp ô của bảng được gọi là một bước.
Ví dụ với , và bảng
ABD...
C.12..
..21C.
A.B.D.
Bước đầu tiên có thể xoá hai ô chứa ký tự A (đường gấp khúc đi ra ngoài bảng bên trái: ), tiếp theo, lần lượt xoá các cặp ô chứa B, chứa C và cặp ô chứa D. Ở ví dụ này, sau khi thực hiện bước xoá có thể, trong bảng còn lại ô không thể xoá được.
Yêu cầu: Cho , và xâu độ dài mô tả các dòng của bảng. Hãy xác định số lượng ô lớn nhất có thể xoá được.
Dữ liệu vào
- Dòng đầu tiên chứa số nguyên được ghi cách nhau bởi dấu cách.
- Dòng thứ chứa xâu ký tự mô tả dòng thứ của bảng (). Các ô trống được thể hiện bằng dấu chấm (
.).
Dữ liệu ra
Gồm một số nguyên duy nhất là số lượng ô lớn nhất có thể xoá được.
Ràng buộc
- , .
- Mỗi ký tự xuất hiện ở không quá ô trong bảng.
Subtasks
- Subtask 1 ( số test): , .
- Subtask 2 ( số test): không có ràng buộc gì thêm.
Mỗi subtask gồm nhiều test, mỗi test được chấm điểm riêng.
Ví dụ
| Input | Output | Giải thích |
|---|---|---|
| 4 6 ABD... C.12.. ..21C. A.B.D. |
8 | Bảng trong đề: xoá lần lượt các cặp A, B, C, D; bốn ô 1, 2, 2, 1 ở giữa không xoá được. |
| 3 3 BA. ABB BAA |
8 | Xoá với , với , với , rồi với . Nếu chọn sai cặp ô giống nhau để xoá trước thì có thể bị kẹt. |
Bình luận