Mai intai trebuie sa te autentifici.
Diferente pentru problema/oposumi intre reviziile #10 si #2
Nu exista diferente intre titluri.
Diferente intre continut:
== include(page="template/taskheader" task_id="oposumi") ==
O familie de oposumi are o vizuină cu $N$ niveluri şi $N·(N+1)/2$ camere dispuse în formă de matrice triunghiulară cu $N$ linii. În fiecare cameră poate locui un singur oposum. Vizuina a fost săpată în pământ de către oposumi, iar nivelul $1$ (cel mai de sus) este cel mai apropiat de suprafaţa solului. Pe fiecare nivel $I$ se află $I$ camere. Dacă avem $I < J$, atunci nivelul $I$ va fi poziţionat mai sus decât nivelul $J$, adică nivelul $I$ va fi mai aproape de suprafaţa solului decât nivelul $J$. În familia de oposumi se află exact $N*(N+1)/2$ membri cu vârste cuprinse între $1$ şi $N*(N+1)/2$, vârste distincte. Regula de bază în vizuina familiei de oposumi este următoarea: în camera de pe linia $I$ şi coloana $J$ trebuie să locuiască un oposum mai tânăr decât în camerele de pe poziţiile $(I+1, J)$ respectiv $(I+1,J+1)$. Un oposum de vârsta $X$ se consideră mai tânăr decât un oposum de vârsta $Y$ dacă $X < Y$. Fiecare oposum vrea să ştie care e cel mai de sus nivel pe care se poate poziţiona. Din păcate, ei nu au lăbuţele făcute să programeze, aşa că membrii familiei de oposumi vă cer vouă ajutorul. Dându-se numărul natural $N$ ei vă cer să răspundeţi la două întrebări: **Cerinţa 1 (50 de puncte)** Pentru fiecare oposum să se afle nivelul cel mai de sus (cel mai aproapiat de suprafaţa solului) pe care se poate afla respectând regulile de vârstă. **Cerinţa 2 (50 de puncte)** Pentru un oposum dat de vârsta $K$ să se afişeze matricea astfel încât oposumul să stea într-o cameră pe un nivel cât mai de sus respectând regulile de vârstă.
Poveste şi cerinţă...
h2. Date de intrare
Pe prima linie a fişierului de intrare $oposumi.in$ se găseşte numărul $T$ ce poate avea valoarea $1$ sau $2$ astfel încât: * Dacă $T$ are valoarea $1$, atunci se cere rezolvarea cerinţei $1$, iar în continuare se va regăsi numărul natural $N$ reprezentând numărul de niveluri ale vizuinii. * Daca $T$ are valoarea $2$, atunci se cere rezolvarea cerinţei $2$, iar în continuare se va regăsi numărul natural $N$ reprezentând numărul de niveluri ale vizuinii, urmat de numărul natural $K$ ce reprezintă vârsta oposumului ce se doreşte poziţionat pe un nivel cât mai de sus.
Fişierul de intrare $oposumi.in$ ...
h2. Date de ieşire
În fişierul de ieşire $oposumi.out$ se cere să se tipărească: * Pentru $T = 1$ se va afişa un şir de $N·(N+1)/2$ numere, unde cel de al $I$-lea număr reprezintă cel mai de sus nivel pe care se poate afla oposumul de vârstă $I$. * Pentru $T = 2$ se vor afişa $N$ linii, reprezentând modul în care sunt aşezaţi oposumii în vizuină în funcţie de vârstă, astfel ca oposumul de vârsta $K$ să fie poziţionat pe un nivel cât mai de sus posibil. Pe linia $I$ se vor afişa $I$ numere separate prin câte un spaţiu reprezentând vârstele oposumilor aşezaţi pe nivelul $I$.
În fişierul de ieşire $oposumi.out$ ...
h2. Restricţii
* $1 ≤ N ≤ 1000$, * $1 ≤ K ≤ N·(N+1)/2$, * Pentru cerinţa $T = 2$ soluţia nu este unică. Se acceptă orice soluţie corectă, * Testele nu sunt grupate.
* $... ≤ ... ≤ ...$
h2. Exemplu table(example). |_. oposumi.in |_. oposumi.out |
| 1 3 | 1 2 2 2 3 3
| This is some text written on multiple lines. | This is another text written on multiple lines.
|
| 2 4 7 | 1 2 3 4 5 7 6 8 10 9 | Cel mai de sus nivel la care poate locui un oposum este: * Oposumul de vârsta $1$ poate locui la nivelul $1$ . * Fiecare oposum cu vârsta $2$, $3$ sau $4$ ar putea locui la nivelul $2$. * Oposumii care au vârsta $5$ sau $6$ vor locui la nivelul $3$.
h3. Explicaţie
Cel mai de sus nivel, unde poate locui oposumul cu vârsta de $K = 7$ ani, este nivelul $3$, iar o aşezare posibilă a oposumilor în camere este prezentată mai sus.
...
== include(page="template/taskfooter" task_id="oposumi") ==