fbpx

Problema #280 – PalMax – Rezolvari PBInfo

de Mihai-Alexandru

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 P şi C, 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

Date de intrare

78 56 5665 98789 5665 88 98789 12521 5665 0

Date de ieșire

98789 2
#include <bits/stdc++.h>
using namespace std;
int pal(int n)
{
    int ogl = 0 , aux = n;
    while(n!=0)
    {
        ogl = ogl*10+n%10;
        n/=10;
    }
    if(aux == ogl) return 1;
    else return 0;
}
int main()
{
    int n,aux,maxim=-1,cnt=0;
    cin>>n;
    while(n!=0)
    {
        if(pal(n) && n > maxim) {maxim = n; cnt=1;}
        else if(pal(n) && n == maxim) cnt++;
        cin>>n;
    }
   if(maxim==-1) cout<<"NU EXISTA";
   else
    cout<<maxim<<" "<<cnt;

    return 0;
}
Comentarii

S-ar putea sa iti placa