Sari la conținut
Zece la Info
Probleme

Distanta minima pana la cea mai apropiata sursa (BFS multi-sursa)

Medie 1500 ms 64 MB#lee#bfs#coada#multi-sursa

Se citeste o matrice cu caracterele '.' (celula libera), '#' obstacolobstacol si '*' (sursa; pot exista mai multe surse). Pornind simultan din toate sursele, determinati pentru fiecare celula distanta minima pana la cea mai apropiata sursa, folosind o singura parcurgere Lee cu toate sursele introduse initial in coada. Celulele obstacol se afiseaza -1.

Date de intrare
Pe prima linie se citesc n si m, numarul de linii si de coloane ale matricei. Urmeaza n linii, fiecare continand un sir de m caractere.
Date de iesire
Se afiseaza n linii, fiecare cu m numere separate prin spatiu, reprezentand distanta minima a fiecarei celule pana la cea mai apropiata sursa (-1 pentru obstacole sau celule inaccesibile).
Restrictii
1 <= n, m <= 30, exista cel putin o sursa

Exemple

Exemplul 1

Intrare

3 3
*..
...
..*

Iesire

0 1 2
1 2 1
2 1 0

Exemplul 2

Intrare

2 4
*..#
#..*

Iesire

0 1 2 -1
-1 2 1 0

Vrei să rezolvi problema?

Creează-ți un cont gratuit ca să scrii cod în editor, să trimiți soluții la evaluator și să vezi indicațiile.