1410 - Numere 12: Difference between revisions
Pop Giulia (talk | contribs) Pagină nouă: ==Cerința== Se citesc perechi de numere naturale până la citirea a două valori nule. Să se determine câte dintre perechile X Y au proprietatea că prin concatenarea lui X cu Y sau a lui Y cu X să se obțină un palindrom. ==Date de intrare== Programul citește de la tastatură perechi de numere naturale. Citirea se încheie la introducerea a două valori nule. ==Date de ieșire== Programul va afișa pe ecran numărul C, reprezentând valoarea cerută. ==Restricții... |
Pop Giulia (talk | contribs) No edit summary |
||
(One intermediate revision by the same user not shown) | |||
Line 1: | Line 1: | ||
Sursa: [https://www.pbinfo.ro/probleme/1410/numere12] | |||
==Cerința== | ==Cerința== | ||
Se citesc perechi de numere naturale până la citirea a două valori nule. Să se determine câte dintre perechile X Y au proprietatea că prin concatenarea lui X cu Y sau a lui Y cu X să se obțină un palindrom. | Se citesc perechi de numere naturale până la citirea a două valori nule. Să se determine câte dintre perechile X Y au proprietatea că prin concatenarea lui X cu Y sau a lui Y cu X să se obțină un palindrom. | ||
Line 34: | Line 36: | ||
156 2651: 1562651 este palindrom. | 156 2651: 1562651 este palindrom. | ||
==Solutie== | ==Solutie== | ||
<syntaxhighlight lang="python" line> | |||
c = 0 | c = 0 | ||
x, y = map(int, input().split()) | x, y = map(int, input().split()) | ||
Line 43: | Line 46: | ||
x, y = map(int, input().split()) | x, y = map(int, input().split()) | ||
print(c) | print(c) | ||
</syntaxhighlight> |
Latest revision as of 12:57, 20 May 2023
Sursa: [1]
Cerința[edit | edit source]
Se citesc perechi de numere naturale până la citirea a două valori nule. Să se determine câte dintre perechile X Y au proprietatea că prin concatenarea lui X cu Y sau a lui Y cu X să se obțină un palindrom.
Date de intrare[edit | edit source]
Programul citește de la tastatură perechi de numere naturale. Citirea se încheie la introducerea a două valori nule.
Date de ieșire[edit | edit source]
Programul va afișa pe ecran numărul C, reprezentând valoarea cerută.
Restricții și precizări[edit | edit source]
se vor citi cel mult 40 de perechi de numere; ultima pereche citită nu se va lua în considerare; toate numerele citite vor fi mai mici decât 1.000.000; toate numerele citite sunt nenule, cu excepția ultimelor două; prin concatenarea a două numere înțelegem “lipirea” lor; de exemplu, 12 concatenat cu 5 este 125, iar 5 concatenat cu 12 este 512.
Exemplu:[edit | edit source]
Intrare
14 516 14 416 13 13 123 321 156 2651 456 674 0 0 Ieșire
3
Explicație[edit | edit source]
Perechile care respectă regula sunt:
14 416: 41614 este palindrom; 123 321: 123321 este palindrom; la fel și 321123 este palindrom; 156 2651: 1562651 este palindrom.
Solutie[edit | edit source]
<syntaxhighlight lang="python" line> c = 0 x, y = map(int, input().split()) while x != 0 or y != 0:
xy = str(x) + str(y) yx = str(y) + str(x) if xy == xy[::-1] or yx == yx[::-1]: c = c + 1 x, y = map(int, input().split())
print(c) </syntaxhighlight>