Diferente pentru problema/desen2 intre reviziile #9 si #2

Diferente intre titluri:

Desen2
desen2

Diferente intre continut:

== include(page="template/taskheader" task_id="desen2") ==
Gigel a desenat pe o foaie de matematica un poligon ale carui laturi sunt asezate de-a lungul liniilor caroiajului foii. Niciuna dintre laturile poligonului nu se afla pe marginea foii de hartie.
Gigel a notat in fiecare patratel al foii de hartie cate dintre cele $4$ laturi ale sale se afla pe conturul poligonului.
Gigel a notat în fiecare patratel al foii de hartie cate dintre cele $4$ laturi ale sale se afla pe conturul poligonului.
h2. Cerinta
h2. Date de intrare
Fisierul de intrare $desen2.in$ contine pe prima linie doua numere naturale $N$ $M$, separate prin spatiu, reprezentand numarul de linii si respectiv numarul de coloane ale caroiajului de pe foaia de matematica. Pe fiecare dintre urmatoarele $N$ linii se afla cate $M$ numere din multimea { $0$, $1$, $2$, $3$, $4$ }, separate prin cate un spatiu, reprezentand valorile scrise in patratelele foii de matematica.
Fisierul de intrare $desen2.in$ contine pe prima linie doua numere naturale $N$ $M$, separate prin spatiu, reprezentand numarul de linii si respectiv numarul de coloane ale caroiajului de pe foaia de matematica. Pe fiecare dintre următoarele $N$ linii se afla cate $M$ numere din multimea { $0$, $1$, $2$, $3$, $4$ }, separate prin cate un spatiu, reprezentand valorile scrise in patratelele foii de matematica.
h2. Date de iesire
Fisierul de iesire $desen2.out$ va contine desenul reconstituit. In fisier se vor afla $N$ linii, fiecare linie continand exact $2M-1$ caractere care pot fi:
* $.$ (punct, caracterul cu codul ASCII 46)
* $|$ (bara verticala, caracterul cu codul ASCII 124)
* $_$ (liniuta de subliniere, caracterul cu codul ASCII 95).
* '.' (punct, caracterul cu codul ASCII 46)
* '|'(bara verticala, caracterul cu codul ASCII 124)
& '_' (liniuta de subliniere, caracterul cu codul ASCII 95).
Prima linie a fisierului de iesire ilustreaza aspectul primei linii de pe foaia de matematica (mai exact, laturile de jos ale patratelelor de pe prima linie), a doua linie din fisier aspectul celei de a doua linii de pe foaie (laturile de jos, precum si eventualele laturi verticale), etc. Fie $c{~1~}c{~2~}...c{~2M-1~}$ caracterele de pe o linie a fisierului de iesire. Intotdeauna $c{~1~}='.'$. Caracterul $c{~i~}$ ( $i$ impar, $i>2$ ) este liniuta de subliniere daca latura de jos a patratelului $(i+1)/2$ de pe foaie apartine poligonului si $'.'$ in caz contrar. Caracterul $c{~i~}$ ( $i$ par) este bara verticala daca latura din dreapta a patratelului $i/2$ a patratelului de pe foaie apartine poligonului, respectiv $'.'$ in caz contrar.
Prima linie a fisierului de iesire ilustreaza aspectul primei linii de pe foaia de matematica (mai exact, laturile de jos ale pătratelelor de pe prima linie), a doua linie din fisier aspectul celei de a doua linii de pe foaie (laturile de jos, precum si eventualele laturi verticale), etc. Fie c1c2...c2M-1 caracterele de pe o linie a fisierului de iesire. Intotdeauna $c1$='.'. Caracterul $ci$ ( $i$ impar, $i>2$ ) este liniuta de subliniere daca latura de jos a patratelului $(i+1)/2$ de pe foaie apartine poligonului si $'.'$ in caz contrar. Caracterul $ci$ ( $i$ par) este bara verticala daca latura din dreapta a patratelului $i/2$ a patratelului de pe foaie apartine poligonului, respectiv $'.'$ in caz contrar.
h2. Restrictii
* $3 ≤ N, M  ≤ 1000$
* Se garanteaza ca exista solutie pentru datele de test.
* Se garantează că există soluţie pentru datele de test.
h2. Exemplu
  1 3 2 1
  0 1 1 0
| ...._..
  .._|.|.
  .|_._|.
  .._|.|.
  .|_._|.
  .......
|
!problema/desen2?desen.jpg!
== include(page="template/taskfooter" task_id="desen2") ==
 

Nu exista diferente intre securitate.

Diferente intre topic forum:

3340