Minesweeper
Xem dạng PDFMarko là một sinh viên đại học chăm chỉ, nhưng vì nhiều đêm thức khuya học bài nên lên lớp cậu thường vừa đau đầu vừa đau bụng. Vì cậu cũng là một sinh viên rất giỏi, các bài giảng đôi khi trở nên quá dễ, nên thay vì nghe giảng cậu lại chơi trò ~Minesweeper~ yêu thích. Chơi mãi rồi cũng chán, Marko quyết định tự nghĩ ra một phiên bản riêng của trò chơi này.
Trong phiên bản của Marko, ngay từ đầu cậu đã biết vị trí của toàn bộ ~k~ quả bom trên một bảng có ~n~ hàng và ~m~ cột. Mỗi ô chứa nhiều nhất ~1~ quả bom.
Nhiệm vụ của Marko là điền vào mỗi ô không có bom số lượng bom nằm trong ~8~ ô xung quanh nó. Những ô chứa bom được đánh dấu bằng ký tự ~\texttt{B}~. Hãy in ra ma trận thu được theo đúng luật của Marko.
Input
Dòng đầu tiên chứa ba số nguyên dương ~n~, ~m~, ~k~ theo mô tả đề bài, với ~1 \le n, m \le 500~ và ~1 \le k \le n \cdot m~.
~k~ dòng tiếp theo, mỗi dòng chứa hai số nguyên ~r_i~ và ~s_i~, với ~1 \le r_i \le n~ và ~1 \le s_i \le m~, là hàng và cột của một quả bom.
Output
In ra ~n~ dòng. Trên mỗi dòng, in ~m~ ký tự cách nhau bởi dấu cách, biểu diễn ma trận được tạo theo luật của Marko.
Chấm điểm
- Subtask ~1~ (~15~ điểm): ~n = 1~
- Subtask ~2~ (~18~ điểm): ~k = 1~
- Subtask ~3~ (~17~ điểm): Không có ràng buộc bổ sung.
Sample Input ~1~
1 6 1
1 3
Sample Output ~1~
0 1 B 1 0 0
Sample Input ~2~
3 3 3
1 1
2 3
1 3
Sample Output ~2~
B 3 B
1 3 B
0 1 1
Giải thích
- Ví dụ ~1~: Ô ở cột ~3~ chứa bom nên được ghi ~\texttt{B}~. Hai ô ở cột ~2~ và cột ~4~ kề với quả bom đó nên cùng mang giá trị ~1~.
Bình luận