Bài 37.7. Bản Đồ Giám Sát Camera - [Độ khó: Khá]
Bài 37.7. Bản Đồ Giám Sát Camera - [Độ khó: Khá]
Một công ty bảo an đang lắp đặt hệ thống camera giám sát trên một khu vực rộng lớn, được mô tả bằng một lưới các ô vuông. Mỗi ô vuông có thể chứa một camera (được đánh dấu bằng 'C') hoặc là một vùng trống (được đánh dấu bằng '.'). Để tối ưu hóa, công ty muốn tìm các ô vuông trống nhưng lại nằm sát (trên, dưới, trái, phải) với ít nhất một camera. Đây là những vị trí tiềm năng để bổ sung camera hoặc cần được giám sát kỹ hơn.
INPUT FORMAT
Dòng đầu tiên chứa hai số nguyên R
và C
(1 <= R, C <= 100), lần lượt là số hàng và số cột của bản đồ.
R
dòng tiếp theo, mỗi dòng chứa một chuỗi độ dài C
, biểu diễn một hàng của bản đồ. Mỗi ký tự là 'C' hoặc '.'.
OUTPUT FORMAT
In ra một ma trận mới có cùng kích thước với ma trận đầu vào.
- Nếu ô
(i, j)
là 'C', in ra 'C'. - Nếu ô
(i, j)
là '.' nhưng nằm sát ít nhất một 'C', in ra 'X'. - Nếu ô
(i, j)
là '.' và không nằm sát bất kỳ 'C' nào, in ra '.'.
Ví dụ:
Input:
3 3
.C.
C..
.C.
Output:
XCX
CX.
XCX
Giải thích:
- Ô (0,0) là '.' nhưng sát (0,1) là 'C' -> 'X'
- Ô (0,1) là 'C' -> 'C'
- Ô (0,2) là '.' nhưng sát (0,1) là 'C' -> 'X'
- Ô (1,0) là 'C' -> 'C'
- Ô (1,1) là '.' nhưng sát (1,0) là 'C' -> 'X'
- Ô (1,2) là '.' không sát 'C' nào -> '.'
- Ô (2,0) là '.' nhưng sát (2,1) là 'C' -> 'X'
- Ô (2,1) là 'C' -> 'C'
- Ô (2,2) là '.' nhưng sát (2,1) là 'C' -> 'X'
Comments