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

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.
 
h2. Cerinta
 
Cunoscand valorile scrise in patratelele foii de hartie, sa se reconstituie poligonul.
 
Poveste si 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$ ...
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).
 
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.
 
In fisierul de iesire $desen2.out$ ...
h2. Restrictii
* $3 ≤ N, M  ≤ 1000$
* Se garanteaza ca exista solutie pentru datele de test.
* $... ≤ ... ≤ ...$
h2. Exemplu
table(example). |_. desen2.in |_. desen2.out |
| 4 4
  0 0 1 0
  0 2 3 1
  1 3 2 1
  0 1 1 0
| ...._..
  .._|.|.
  .|_._|.
  .......
| This is some
  text written on
  multiple lines.
| This is another
  text written on
  multiple lines.
|
h3. Explicatie
Desenul corespunzator
 
!problema/desen2?desen.jpg!
...
== include(page="template/taskfooter" task_id="desen2") ==
 

Nu exista diferente intre securitate.

Diferente intre topic forum:

3340