# PBinfo #4481 – PrefixSufixMax – Rezolvare C++

Sursa: Codul lui Andrei
Limbaj: C++
Autor rezolvare: deivid

## Enunț

Cerinţă
Să se scrie un program care să determine cel mai mare prefix care este palindrom și cel mai mare sufix care este palindrom dintr-un număr natural citit de la tastatură.

Date de intrare
Programul va citi de la tastatură un număr natural.

Date de ieşire
Programul va afişa pe ecran cel mai mare prefix care este palindrom, urmat de cel mai mare sufix care este palindrom ale unui numărului citit, separate printr-un spațiu.

Restricţii şi precizări

un număr este palindrom dacă dacă este egal cu oglinditul său
numărul citit va fi mai mic decât 2.000.000.000
dacă numărul citit are proprietatea că este palindrom, atunci atât cel mai mare prefix cât și cel mai mare sufix vor fi egale cu numărul citit.

Exemple:
Intrare

2745
Ieşire

2 5
Intrare

2772
Ieşire

2772 2772
Intrare

1122333
Ieşire

11 333

## Cod sursă C++

```cpp
#include <iostream>
using namespace std;
int oglindit(int n)
{
    int r=0;
    while(n>0)
    {
        r=r*10+n%10;
        n=n/10;
    }
    return r;
}
int main()
{
    long long n,pmax=0,smax=0,p=1;
    cin>>n;
    while(p<=n*10)
    {
        if(n/p==oglindit(n/p) && n/p>pmax) 
            pmax=n/p;
        if(n%p==oglindit(n%p) && n%p>smax) 
            smax=n%p;
        p=p*10;
    }
    cout<<pmax<<" "<<smax;
    return 0;
}
```

## Resurse

- [Pagina originală](https://codulluiandrei.ro/rezolvari/pbinfo/4481)
- [Sursa C++](https://codulluiandrei.ro/rezolvari/pbinfo/4481/cod.cpp)
- [Sursa pe GitHub](https://raw.githubusercontent.com/codulluiandrei/pbinfo/main/pbinfo-4481/main.cpp)
- [Cursuri de informatică pentru BAC](https://codulluiandrei.ro/academia/info-curs/pachet-cpp/)
