아직 만들고 있는 페이지입니다.

이 페이지는 아직 만드는 중입니다. 보이는 내용은 바뀔 수 있습니다.

지뢰찾기

면접 대비

시간 제한1초메모리 제한128 MB

요약
지뢰와 빈 칸으로 이루어진 격자에서 각 빈 칸을 주변 여덟 칸에 있는 지뢰 수로 바꾼다.
난이도

쉬움10점 중 2점

유형
시뮬레이션, 구현, 배열, 행렬
정답자
아직 제출이 없습니다

문제

요원 예슬은 지뢰밭에서 지뢰의 개수를 조사하는 임무를 맡았다. 지뢰밭은 R×CR \times C개의 칸으로 이루어진 격자이며, 각 칸에는 지뢰가 있거나(문자 *) 비어 있다(문자 .).

예슬은 비어 있는 모든 칸마다, 그 칸과 인접한 칸에 있는 지뢰의 개수를 세어 적어야 한다. 두 칸이 변이나 꼭짓점을 공유하면 인접한 것으로 본다. 따라서 한 칸은 상·하·좌·우와 네 개의 대각선 방향을 합쳐 최대 8개의 칸과 인접한다.

지뢰밭의 상태가 주어질 때, 비어 있는 각 칸을 그 칸과 인접한 지뢰의 개수로 바꾼 격자를 출력하여라.

입력

입력은 여러 개의 테스트 케이스로 이루어진다.

각 테스트 케이스의 첫 줄에는 격자의 행 수와 열 수를 나타내는 두 정수 RR, CC (1≤R,C≤1001 \le R, C \le 100)가 주어진다.

이어지는 RR개의 줄에는 각각 CC개의 문자가 주어진다. 각 문자는 지뢰를 나타내는 * 또는 빈 칸을 나타내는 . 이다.

RR과 CC가 모두 00인 줄 0 0이 주어지면 입력이 끝난다.

출력

각 테스트 케이스마다 CC개의 문자로 이루어진 RR개의 줄을 출력한다. 모든 .은 그 칸과 인접한 지뢰의 개수로 바꾸어 출력하고, *은 그대로 출력한다.

문자 사이에 공백을 넣지 말고, 줄 사이에 빈 줄을 넣지 마라.

예제1

  1. 예제 1

    입력
    3 2
    ..
    .*
    ..
    5 5
    *.*.*
    ..*..
    *****
    .....
    ..**.
    0 0
    
    예상 출력
    11
    1*
    11
    *3*3*
    36*63
    *****
    24553
    01**1