QOJ.ac

QOJ

Süre Sınırı: 10 s Bellek Sınırı: 256 MB Toplam puan: 100

#23841. Синоптик

İstatistikler

Місто JOI має форму прямокутника розміром $H$ кілометрів з півночі на південь і $W$ кілометрів зі сходу на захід та поділене на $H \times W$ невеликих квадратних ділянок зі стороною $1$ кілометр. Ділянка, що є $i$-ю з півночі та $j$-ю із заходу, позначається як $(i, j)$.

Над кожною ділянкою в небі або є хмара, або немає хмари. Кожні $1$ хвилину всі хмари зміщуються на $1$ кілометр на схід. Оскільки сьогодні чудова погода, жодні хмари з-за меж міста JOI у місто не прийдуть.

Зараз для кожної ділянки відомо, чи є над нею в небі хмара. Вам як синоптику доручено для кожної ділянки передбачити, через скільки хвилин від поточного моменту над цією ділянкою вперше з'явиться хмара.

Для кожної ділянки визначте, через скільки хвилин від поточного моменту в небі над нею вперше з'явиться хмара.

Вхідні дані

Вхідні дані складаються з $1 + H$ рядків.

У першому рядку через пробіл записано цілі числа $H, W$ ($1 \le H \le 100, 1 \le W \le 100$). Це означає, що місто JOI поділене на $H \times W$ квадратних ділянок зі стороною $1$ кілометр.

В $i$-му рядку ($1 \le i \le H$) із наступних $H$ рядків записано рядок із $W$ символів. $j$-й символ ($1 \le j \le W$) із цих $W$ символів показує, чи є зараз хмара над ділянкою $(i, j)$. Якщо хмара є, записано символ 'c' (мала латинська літера), а якщо хмари немає — символ '.' (крапка).

Вихідні дані

Вихідні дані складаються з $H$ рядків, кожен з яких містить $W$ цілих чисел, розділених пробілами. $j$-те ціле число в $i$-му рядку вихідних даних ($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.