Hôm nay Nobita phải đi học bù từ sáng tới khuya cho kì nghỉ dịch Covid-19 dài kỷ lục 😢. Doraemon ở nhà một mình cả ngày quá cô đơn nên nó đã bày ra trò mới - Lật Bánh Rán. Doraemon đã mua sẵn 64 cái bánh rán đặc biệt của thế kỉ 22. Mỗi khi lật mặt bánh thì cả màu và vị bên trong đều thay đổi 😮. Có 2 loại bánh khác nhau : màu nâu và màu trắng. Doraemon sẽ chơi với một con robot AI. Mèo ta và robot sẽ thay phiên nhau đi. Doraemon luôn đặt những chiếc bánh rán màu nâu xuống bàn cờ khi chơi lượt của mình, còn robot thì ngược lại (đặt bánh màu trắng). Doraemon sẽ đi trước.
Bàn cờ là một bàn ăn vuông vức được chia thành \(8\) hàng và \(8\) cột (tức là \(64\) ô vuông nhỏ): các hàng được đánh số từ \(1\) tới \(8\) theo chiều từ trên xuống dưới, các cột được đánh các chữ cái từ \(a\) tới \(h\) theo chiều từ trái sang phải.
Đây là 1 ví dụ của bàn cờ:
Tới lượt một người chơi, người đó phải đặt bánh rán theo màu của mình tại một ô trống sao cho nó liền kề với một dãy các bánh rán khác màu (theo đường chéo hoặc hàng ngang, hàng dọc) và ở đầu kia của dãy bánh khác màu ấy là một bánh rán cùng màu với bánh mà người chơi này vừa đặt xuống. Nói cách khác, chiếc bánh rán người chơi này mới đặt xuống cùng với một chiếc bánh rán cũ (cùng màu) bất kì kẹp ngay 2 đầu của một dãy các bánh rán khác màu.
Trong hình trên, những ô có vòng tròn viền đỏ là những vị trí mà Doraemon có thể đặt bánh xuống. Mỗi khi người chơi đặt bánh xuống như vậy, tất cả những bánh rán khác màu ở giữa sẽ được lật lại và đổi thành bánh cùng loại với chiếc bánh rán mới được đặt xuống. (Việc lật bánh để đổi loại được thực hiện bởi bàn cờ - máy lật bánh rán tự động từ thế kỉ 23 😮)
Hiện tại là lượt chơi của Doraemon, nhưng vì vừa chơi vừa nhìn những chiếc bánh rán thơm ngon đổi màu nãy giờ nên mèo ta đã hoa mắt, đói xỉu 😢 và không thể nhìn ra được nước đi tối ưu có thể lật lên nhiều chiếc bánh rán màu nâu nhất (Doraemon chỉ thích vị của những bánh màu nâu). Bạn hãy giúp chú mèo máy tội nghiệp này nhé! Hãy in ra vị trí mà Doraemon nên đặt bánh rán xuống.
Trong hình trên, 2 hình tròn màu đỏ là ô đặt bánh rán tối ưu nhất.
Input
- Gồm 8 dòng chứa các xâu độ dài 8 chỉ gồm các kí tự \(B\), \(W\) và \(.\) mô tả bàn cờ. Những ô có bánh rán đang có màu nâu ở mặt ngửa biểu thị bởi chữ cái \(B\), bánh rán có màu trắng là chữ \(W\), còn lại là dấu chấm.
Output
- Gồm một tọa độ duy nhất là vị trí bạn sẽ đặt bánh rán xuống (VD: \(a1\), \(h8\), …) và số lượng bánh rán nâu sẽ lật lên được (2 thông tin ngăn nhau bởi dấu cách).
Example
Test 1
Input
.WWWWWB.
........
...WWB..
.WWWB...
B.B.B...
........
....BWB.
........
Output
a1 5
In ra c3 5
cũng được coi là đáp án đúng.
Lưu ý
Nếu có nhiều tọa độ cùng lật được số lượng bánh rán nâu lớn nhất, bạn có thể in ra một tọa độ bất kì.
Nếu bánh rán mà Doraemon vừa đặt xuống “kẹp” được nhiều dãy bánh rán khác màu khác nhau thì nó có thể lật hết số bánh rán khác màu trong tất cả các dãy đó!
Bình luận
Đã sửa lại Checker.
Checker cũ kiểm tra solution theo kiểu: xét tất cả 8 hướng và tìm đầu kia của dãy
...WWWB
theo đường quét dừng lại khi tìm thấyBW
. Điều này khiến Checker đánh trường hợpBW..BWWx
(x
là vị trí ta đặt) là không hợp lệ, vì nó chỉ thấyBW
đầu tiên mà thôi.1 bình luận nữa