Diferențe pentru problema/palindrom2 între reviziile #7 si #14

Nu există diferențe între titluri.

Diferențe între conținut:

== include(page="template/taskheader" task_id="palindrom2") ==
Un număr se numește *palindrom* dacă prima lui cifră este egală cu ultima, a doua cu penultima și așa mai departe. De exemplu numerele 1221, 505 și 7 sunt palindromuri, în vreme ce 500, 1410 și 2424 nu sunt palindromuri.
Un număr se numește *palindrom* dacă prima lui cifră este egală cu ultima, a doua cu penultima și așa mai departe. De exemplu numerele [$1221$], $505$ și $7$ sunt palindromuri, în vreme ce [$500$], $1410$ și $2424$ nu sunt palindromuri.
Similar, un număr se numește *aproape palindrom* dacă are aceleași perechi de cifre identice ca un palindrom, mai puțin o pereche în care cifrele diferă. De exemplu numerele [*5*]0[*0*], 1[*41*]1, [*2*]44[*4*], [*1*]22[*0*], 5[*3*]6[*2*]5, [*14*] și 4[*01*]4 sunt numere aproape palindromuri (cu perechea de cifre neidentice îngroșată), în vreme ce 1221, 1410, 6, 505, 22 și 512125 nu sunt numere aproape palindromuri deoarece fie sunt palindromuri, fie au prea multe perechi de cifre diferite.
Similar, un număr se numește *aproape palindrom* dacă are aceleași perechi de cifre identice ca un palindrom, mai puțin o pereche în care cifrele diferă. De exemplu numerele $[*5*]0[*0*]$, $1[*41*]1$, $[*2*]44[*4*]$, $[*1*]22[*0*]$, $5[*3*]6[*2*]5$, $[*14*]$ și $4[*01*]4$ sunt numere aproape palindromuri (cu perechea de cifre neidentice îngroșată), în vreme ce [$1221$], [$1410$], [$6$], [$505$], $22$ și $512125$ nu sunt numere aproape palindromuri deoarece fie sunt palindromuri, fie au prea multe perechi de cifre diferite.
Mai definim *palindromul asociat* al unui număr *x* ca fiind cel mai mic număr palindrom *p* strict mai mare decât *x* ([*p*] > [*x*]). De exemplu palindromul asociat al lui 5442 este 5445, palindromul asociat al lui 2445 este 2552, al lui 545 este 555, al lui 39995 este 40004, al lui 500 este 505, iar al lui 512125 este 512215.
Mai definim *palindromul asociat* al unui număr *x* ca fiind cel mai mic număr palindrom *p* strict mai mare decât *x* ([*p*] > [*x*]). De exemplu palindromul asociat al lui $5442$ este [$5445$], palindromul asociat al lui $2445$ este [$2552$], al lui $545$ este [$555$], al lui $39995$ este [$40004$], al lui $500$ este [$505$], iar al lui $512125$ este [$512215$].
h2. Cerințe
Scrieți un program care citind un număr natural nenul n și apoi un șir de n numere naturale determină:
Scrieți un program care citind un număr natural nenul $n$ și apoi un șir de $n$ numere naturale determină:
# câte dintre cele n numere sunt palindrom
# câte dintre cele n numere sunt  aproape palindrom
# palindromurile asociate pentru cele n numere citite.
# câte dintre cele $n$ numere sunt palindrom;
# câte dintre cele $n$ numere sunt aproape palindrom;
# palindromurile asociate pentru cele $n$ numere citite.
h2. Date de intrare
Fișierul de intrare $palindrom2.in$ ...
Fișierul de intrare $palindrom2.in$ conține pe prima linie un număr [$C$]. Pentru toate testele, $C$ poate lua numai valorile [$1$], $2$ sau [$3$]. Pe a doua linie se află numărul $*n*$, iar pe a treia linie cele $*n*$ numere naturale despărțite prin câte un spațiu.
h2. Date de ieșire
În fișierul de ieșire $palindrom2.out$ ...
Fișierul de ieșire $palindrom2.out$:
 
* dacă $C = 1$, va conține un singur număr natural reprezentând numărul de numere palindrom din șir;
* dacă $C = 2$, va conține numărul de numere din șir care sunt aproape palindrom;
* dacă $C = 3$, va conține numerele palindrom asociate celor $*n*$ numere din șir, separate prin câte un spațiu.
h2. Restricții
* $... ≤ ... ≤ ...$
* $1 ≤ *n* ≤ 10 000$
* $1 ≤ *numerele din șir* ≤ 2 000 000 000$
* Pentru rezolvarea corectă a primei cerințe se acordă $20$ de puncte.
* Pentru rezolvarea corectă a celei de a doua cerințe se acordă $30$ de puncte.
* Pentru rezolvarea corectă a celei de a treia cerințe se acordă $50$ de puncte.
h2. Exemplu
table(example).
|_. palindrom2.in |_. palindrom2.out |
| This is some
text written on
multiple lines.
| This is another
text written on
multiple lines.
|
 
h3. Explicație
 
...
|_. palindrom2.in |_. palindrom2.out |_. Explicație |
| 1
7
1221 500 53635 505 7 4004 1410
| 5
| Explicație: Cele 5 numere palindrom sunt
1221, 53635, 505, 7 și 4004
(C fiind 1, se rezolvă doar prima cerință)
|
| 2
4
5442 2445 545 39995
| 3
| Explicație: Cele 3 numere aproape palindrom
sunt 5442, 2445 și 39995
(C fiind 2, se rezolvă doar a doua cerință)
|
| 3
11
6 1411 2444 1221 505 1220 53625 14 4014 1410 22
| 7 1441 2552 1331 515 1221 53635 22 4114 1441 33
| Explicație: Palindromul asociat  lui 6 este 7,
al lui 1411 este 1441, al lui 2444 este 2552 etc.
(C fiind 3, se rezolvă doar a treia cerință)
|
== include(page="template/taskfooter" task_id="palindrom2") ==

Nu există diferențe între securitate.