0280 - Pal Max

From Bitnami MediaWiki
Revision as of 15:41, 12 March 2023 by Tamas Claudia (talk | contribs) (Pagină nouă: Sursă: [https://www.pbinfo.ro/probleme/280/palmax] == Cerinţa == Se dau mai multe numere naturale. Determinaţi cel mai mare număr palindrom aflat printre numerele date şi de câte ori apare. == Date de intrare == Programul citește de la tastatură numere naturale, până la apariţia lui zero, care nu se ia în considerare. == Date de ieşire == Programul afișează pe ecran numerele '''palindrom_maxim''' şi '''nr_aparitii''', numărul palindrom maxim şi numărul de...)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

Sursă: [1]

Cerinţa

Se dau mai multe numere naturale. Determinaţi cel mai mare număr palindrom aflat printre numerele date şi de câte ori apare.

Date de intrare

Programul citește de la tastatură numere naturale, până la apariţia lui zero, care nu se ia în considerare.

Date de ieşire

Programul afișează pe ecran numerele palindrom_maxim şi nr_aparitii, numărul palindrom maxim şi numărul de apariţii, separate printr-un spaţiu, sau mesajul NU EXISTA, dacă printre numerele date nu există nici un număr palindrom

Restricții și precizări

  • fiecare dintre numerele citite va avea cel mult 9 cifre;

Exemplu

Intrare
78 56 5665 98789 5665 88 98789 12521 5665 0
Ieșire
98789 2

Rezolvare

<syntaxhighlight lang="python" line>

def este_palindrom(numar):

   invers = 0
   copie = numar
   while copie > 0:
       ultima_cifra = copie % 10
       invers = invers * 10 + ultima_cifra
       copie //= 10
   return numar == invers

numere = [] while True:

   numar = int(input())
   if numar == 0:
       break
   numere.append(numar)

palindrom_maxim = None nr_aparitii = 0 for numar in numere:

   if este_palindrom(numar) and (palindrom_maxim is None or numar > palindrom_maxim):
       palindrom_maxim = numar
       nr_aparitii = 1
   elif numar == palindrom_maxim:
       nr_aparitii += 1

if palindrom_maxim is not None:

   print(palindrom_maxim, nr_aparitii)

else:

   print("NU EXISTA")

</syntaxhighlight>