434
Cerința
Se dau n numere naturale. Determinaţi cele mai mari două numere cu trei cifre care nu apar printre numerele date.
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 numerele a b, a < b reprezentând cele două numere determinate. Dacă nu se pot găsi două astfel de numere, se va afişa mesajul NU EXISTA.
Restricții și precizări
1 ≤ n ≤ 500.000- cele
nnumere citite vor fi mai mici decât1.000.000.000
Exemplu
Intrare
10 10 994 1010 999 1010 998 1005 994 996 995
Ieșire
993 997
#include <bits/stdc++.h>
using namespace std;
int c[1000];
int main()
{
int n;
cin >> n;
int x;
for(int i = 1; i <= n; ++i){
cin >> x;
if(x < 1000)
c[x] = 1;
}
int cnt = 0, a, b;
for(int i = 999; cnt < 2 && i >= 100; --i)
if(!c[i]){
cnt++;
if(cnt == 1)
b = i;
else
a = i;
}
if(cnt == 2)
cout << a << ' ' << b;
else
cout << "NU EXISTA";
}
Comentarii