Chắc hẳn các bạn ai cũng đã từng chơi trò dò mìn (Minesweeper). Trong trò chơi này, người chơi khởi đầu với một bảng ô vuông trống thể hiện bãi mìn. Người chơi sẽ phải click chuột vào một trong số các ô vuông trong bảng.
Nếu không may trúng phải ô có mìn thì trò chơi kết thúc. Trường hợp khác là ô đó không có mìn và một vùng các ô sẽ được mở ra cùng với những con số. Số trên một ô là số lượng mìn có trong ~8~ ô nằm quanh ô đó.
Một bảng mìn có thể có dạng như sau:
Bạn được cho một ma trận ~n \times m~ , mỗi ô chứa số ~0~ hoặc ~1~ lần lượt đại diện cho ô không có mìn và ô có mìn. Bạn hãy tìm một ma trận ~01~ khác có cùng kích thước sao cho tổng giá trị các số trong các ô không có mìn của nó bằng với ma trận ban đầu. (Số trên một ô không mìn là số lượng mìn có trong ~8~ ô nằm xung quanh ô đó)
Input
Dòng đầu tiên chứa ~2~ số nguyên dương ~n,m~ là kích thước của ma trận.
~n~ dòng tiếp theo, mỗi dòng chứa ~m~ số nguyên là giá trị các ô trong ma trận.
Output
- Một ma trận ~n \times m~ khác thỏa mãn yêu cầu đề bài.
(Nếu có nhiều ma trận thỏa mãn, in ra bất kỳ. Ngược lại, nếu không tìm được ma trận thỏa mãn, in ra ~-1~.
Sample Input
4 5
0 1 0 1 1
0 0 0 1 0
1 0 0 0 0
0 0 1 0 0
Sample Output
0 0 0 0 0
1 1 0 1 0
0 1 1 1 0
1 1 1 1 0
Giải thích ví dụ:
Ma trận input mô tả bãi mìn sau:
Ma trận output mô tả bãi mìn sau:
Tổng các số trong những ô không có mìn ở cả ~2~ ma trận đều là ~25~.
Subtask
Có ~40\%~ số lượng test thỏa mãn điều kiện: ~n \times m \leq 20~.
~20\%~ khác thỏa mãn: ~n = 1, m \leq 10^{3}~.
~40\%~ số test còn lại thỏa mãn: ~n, m \leq 7 \cdot 10^{3}~ và ~n \times m \leq 10^{6}~.
Comments