QOJ.ac

QOJ

時間限制: 10 s 記憶體限制: 256 MB 總分: 100

#23841. 기상캐스터

统计

JOI 시는 남북 방향으로 $H$ 킬로미터, 동서 방향으로 $W$ 킬로미터인 직사각형 모양을 하고 있으며, $H \times W$개의 가로세로 $1$ 킬로미터인 소구획으로 나뉘어 있다. 북쪽에서 $i$번째, 서쪽에서 $j$번째인 소구획을 $(i, j)$로 나타낸다.

각 소구획은 상공에 구름이 있거나 구름이 없거나 둘 중 하나이다. 모든 구름은 $1$분이 지날 때마다 $1$ 킬로미터씩 동쪽으로 이동한다. 오늘은 날씨가 정말 좋기 때문에 JOI 시 밖에서 JOI 시 안으로 구름이 이동해 오는 일은 없다.

지금 각 소구획의 상공에 구름이 있는지 없는지가 알려져 있다. 기상캐스터인 당신은 각 소구획에 대해 지금으로부터 몇 분 후에 처음으로 그 소구획의 상공에 구름이 오는지를 예측하기로 했다.

각 소구획에 대해 지금으로부터 몇 분 후에 처음으로 그 소구획의 상공에 구름이 오는지 구하여라.

입력

입력은 $1 + H$줄로 이루어진다.

첫째 줄에는 정수 $H, W$ ($1 \le H \le 100, 1 \le W \le 100$)가 공백으로 구분되어 적혀 있다. 이는 JOI 시가 $H \times W$개의 가로세로 $1$ 킬로미터인 소구획으로 나뉘어 있음을 나타낸다.

이어지는 $H$개의 줄 중 $i$번째 줄 ($1 \le i \le H$)에는 $W$개의 문자로 이루어진 문자열이 적혀 있다. $W$개의 문자 중 $j$번째 문자 ($1 \le j \le W$)는 소구획 $(i, j)$의 상공에 지금 구름이 있는지 여부를 나타낸다. 구름이 있는 경우에는 문자 'c'(영문 소문자)가, 구름이 없는 경우에는 문자 '.'(마침표)가 적혀 있다.

출력

출력은 $H$줄로 이루어지며, 각 줄은 공백으로 구분된 $W$개의 정수로 이루어진다. 출력의 $i$번째 줄의 $j$번째 정수 ($1 \le i \le H, 1 \le j \le W$)는 지금으로부터 몇 분 후에 처음으로 소구획 $(i, j)$의 상공에 구름이 오는지를 나타내야 한다. 단, 지금 이미 소구획 $(i, j)$의 상공에 구름이 있는 경우에는 $0$을, 몇 분이 지나도 소구획 $(i, j)$의 상공에 구름이 오지 않는 경우에는 $-1$을 출력하여라.

출력의 각 줄의 맨 앞과 맨 뒤에는 불필요한 공백을 넣지 말아야 한다.

예제

입력 1

3 4
c..c
..c.
....

출력 1

0 1 2 0
-1 -1 0 1
-1 -1 -1 -1

참고

입출력 예제 1에서 JOI 시는 $3 \times 4$개의 소구획으로 나뉘어 있다. 지금 JOI 시의 구름 상황은 다음과 같다. 그림의 위쪽이 북쪽을 나타낸다.

problem_23841_94a18190c50f717cd44d7f844d77a7f4.png

이 뒤로 $1$분마다 구름은 다음과 같이 이동한다.

problem_23841_3184075bd335b0698ed70b0ebfc5c0ec.png problem_23841_1fbf60b384fef9f69c3256331aae624b.png problem_23841_6a3f4ba29e62183a0d7dacc38ab6caee.png

입력 2

6 8
.c......
........
.ccc..c.
....c...
..c.cc..
....c...

출력 2

-1 0 1 2 3 4 5 6
-1 -1 -1 -1 -1 -1 -1 -1
-1 0 0 0 1 2 0 1
-1 -1 -1 -1 0 1 2 3
-1 -1 0 1 0 0 1 2
-1 -1 -1 -1 0 1 2 3

Discussions

About Discussions

The discussion section is only for posting: General Discussions (problem-solving strategies, alternative approaches), and Off-topic conversations.

This is NOT for reporting issues! If you want to report bugs or errors, please use the Issues section below.

Open Discussions 0
No discussions in this category.

Issues

About Issues

If you find any issues with the problem (statement, scoring, time/memory limits, test cases, etc.), you may submit an issue here. A problem moderator will review your issue.

Guidelines:

  1. This is not a place to publish discussions, editorials, or requests to debug your code. Issues are only visible to you and problem moderators.
  2. Do not submit duplicated issues.
  3. Issues must be filed in English or Chinese only.
Active Issues 0
No issues in this category.
Closed/Resolved Issues 0
No issues in this category.