fbpx

Problema #2662 – construirenumarcucifrelemaxime – Rezolvari PBInfo

de Mihai-Alexandru

Cerința

Se dau n numere naturale. Se construiește o valoare selectând de la fiecare număr cifra maximă. Determinați pătratul acestei valori.

Date de intrare

Programul citește de la tastatură numărul n, iar apoi n numere naturale, separate prin spații.

Date de ieșire

Programul va afișa pe ecran valoarea cerută.

Restricții și precizări

  • 2 ≤ n ≤ 9
  • cele n numere citite vor fi mai mici decât 1.000.000.000.000.000.000

Exemplu

Intrare

2
132 29

Ieșire

1521

Explicație

39 * 39 = 1521.

#include <bits/stdc++.h>
using namespace std;
long long a[11] , n , nr , x;
int main()
{
    cin >> n;
    for(int i = 1 ; i <= n ; ++i)
    {
        cin >> x;
        int max = 0;
        while(x != 0)
        {
            if(x % 10 > max) max = x % 10;
            x /= 10;
        }
        a[i] = max;
    }
    for(int i = 1 ; i <= n ; ++i) nr = nr * 10 + a[i];
    cout << 1LL * nr * nr;
    return 0;
}
Comentarii

S-ar putea sa iti placa