9.29.2017

Dò mìn

Chắc hẳn bạn đã từng chơi trò chơi Minesweeper? Đó là một trò chơi có sẵn trong hệ điều hành Windows. Mục đích của trò chơi này là tìm tất cả các quả mìn nằm trong m x n ô vuông của lưới.
Trò chơi hiển thị trong mỗi ô vuông một số nguyên, cho biết có bao nhiêu ô vuông láng giềng chứa mìn. Mỗi ô vuông có nhiều nhất là 8 ô láng giềng, gồm các ô vuông chung cạnh và chung đỉnh với nó. Lưới 4#4 ở bên trái hình vẽ dưới đây có 2 ô chứa mìn được biểu thị bởi ký tự “*”. Bây giờ chúng ta mô tả một lưới giống như vậy, nhưng trong mỗi ô vuông an toàn (tức là ô vuông không chứa mìn) ta ghi một số nguyên như mô tả ở trên thì chúng ta có lưới như bên phải:
       *. . .          *100
       . . . .           2210
       . * . .          1*10
       . . . .           1110
Dữ liệu: Dòng đầu tiên của file vào chứa hai số m, n (0 < m, n # 100) là số hàng, số cột của lưới. Mỗi dòng trong số m dòng tiếp theo chứa đúng m ký tự biểu diễn lưới. Các ô vuông an toàn được biểu diễn bởi ký tự “.” và các ô vuông chứa mìn bởi biểu diễn bởi ký tự “*”. Không có dấu cách giữa các ký tự.
Kết quả: File ra gồm m dòng với các ký tự “.” được sửa bởi số các ô vuông láng giềng chứa mìn.
Ví dụ:
      mines.In             mines.out             mines.In             mines.out
     4 4                                                      3 5
     *  . . .                    *100                      ** . . .                    **100
      . . . .                     2210                       . . . . .                     33200
      . * . .                   1*10                        .*. . .                     1*100
      . . . .                    1110
                                                            Lời giải tham khảo

No comments:

Post a Comment

Cảm ơn bạn đã nhận xét