# PBinfo #3786 – toate – Rezolvare C++

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

## Enunț

Vreme trece, vreme vine,
Toate-s vechi şi nouă toate;
Ce e rău şi ce e bine
Tu te-ntreabă şi socoate;

       (Mihai Eminescu, Glossă)

Cerința
De n numere sunt date,
Şi cifra nouă e-n toate,
Află ce număr devine
Maxim făr’de nouă-n sine?

Date de intrare
Fișierul de intrare toate.in conține pe prima linie numărul n, iar pe a doua linie n numere naturale separate prin spații.

Date de ieșire
Fișierul de ieșire toate.out va conține pe prima linie numărul maxim cerut.

Restricții și precizări

1 ≤ n ≤ 100.000
numerele de pe a doua linie a fișierului de intrare vor fi mai mici decât 1.000.000.000

Exemplu:
toate.in

5
923 926 329 429 3959
toate.out

42
Explicație
Numărul maxim cerut este 42.

## Cod sursă C++

```cpp
#include <fstream>
using namespace std;
ifstream in("toate.in");
ofstream out("toate.out");
int n, i, a, x, p, r, maxim = 0;
int main() {
    in >> n;
    for (i = 1; i <= n; i++) {
        in >> x; a = 0; p = 1;
        while (x != 0) {
            r = x % 10;
            if (r != 9) {
                a = a + r * p;
                p = p * 10;
            } x = x / 10;
        } if (a > maxim) maxim = a;
    } out << maxim;
    return 0;
}
```

## Resurse

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