Fişierul intrare/ieşire:volum.in, volum.outSursăONI 2014, clasele 11-12
AutorRadu Stefan VoroneanuAdăugată detudorv96Tudor Varan tudorv96
Timp execuţie pe test0.5 secLimită de memorie36864 kbytes
Scorul tăuN/ADificultatenormalnormalnormalnormalnormal

Vezi solutiile trimise | Statistici

Volum

K.L. 2.0 şi-a dorit o piscină pe un grid A cu N linii şi M coloane. Cum K.L. 2.0 nu a fost foarte inspirat, el a uitat să îşi niveleze terenul înainte de a construi piscina, astfel încât fiecare celulă de coordonate (i, j) a gridului are o înalţime  A_i,j (1 ≤ iN şi 1 ≤ jM). La un moment dat începe o ploaie puternică, care umple piscina cu apă. După terminarea ploii, K.L. 2.0 se întreabă câtă apă are în piscină.

Dintr-o celulă apa se varsă în celulele vecine cu care are o latură comună şi care au înălţimea strict mai mică decât celula curentă. Apa de pe marginea piscinei se scurge în exterior.

Cerinţă

Pentru N, M şi gridul A date, să se determine volumul de apă care a rămas în piscină.

Date de intrare

Fişierul de intrare volum.in conţine pe prima linie două numere naturale N şi M, reprezentând dimensiunile gridului, iar pe fiecare dintre următoarele N linii se află câte M numere, reprezentând înălţimile terenului, separate prin câte un spaţiu.

Date de ieşire

Fişierul de ieşire volum.out conţine un singur număr, reprezentând volumul de apă care a rămas în piscină.

Restricţii

  • 3 ≤ N, M ≤ 752
  • 0 A_i,j 109 + 2
  • Pentru 30% din punctaj, 3 ≤ N, M ≤ 82.
  • Pentru 40% din punctaj, 0 A_i,j 103 + 2.
  • Volumul apei este suma unităţilor de apă care rămâne în celulele piscinei.

Exemplu

volum.involum.out
3 3
2 2 2
2 0 2
2 2 2
2
3 3
3 3 3
3 0 2
3 3 3
2
5 5
2 2 3 3 3
2 2 3 1 3
2 3 1 3 3
2 2 3 2 2
2 2 2 2 2
4

Explicaţie

In primul exemplu rămân după ploaie două unităţi de apă în celula cu înălţimea 0. Nu pot rămâne 3 unităţi, deoarece o unitate s-ar scurge prin una din cele 4 celule vecine în exteriorul piscinei.

In al doilea exemplu rămân după ploaie două unităţi de apă în celula cu înălţimea 0. Nu pot rămâne 3 unităţi, deoarece o unitate s-ar scurge prin celula vecină cu valoarea 2 în exteriorul piscinei.

In al treilea exemplu rămân după ploaie câte două unităţi de apă în celulele cu înălţimea 1. Nu pot rămâne câte 3 unităţi. De exemplu, din celula (2,4) apa se poate scurge în celula (2,5) şi apoi în exterior, respectiv din celula (3,3) în şirul de celule (4,3) - (5,3) şi apoi în exterior.

Trebuie sa te autentifici pentru a trimite solutii. Click aici

Cum se trimit solutii?

remote content