NrLipsa1

Fișierul de intrare conține cel puțin 3 și cel mult 1 000 000 de numere naturale. Se cere să se afișeze în fișierul de ieșire, separate printr-un spaţiu, două numere distincte, anume cel mai mic număr par cu două cifre și cel mai mare număr par cu două cifre care NU fac parte din şir.

Dacă nu există două astfel de valori, în fișierul de ieșire se afişează mesajul nu exista.

Date de intrare
Fișierul de intrare nrlipsa1.in conține cel puțin 3 și cel mult 1.000.000 de numere naturale, separate prin câte un spațiu, dispuse pe mai multe linii.

Date de ieșire
Fișierul de ieșire nrlipsa1.out va conține pe prima linie valorile cerute, separate prin câte un spațiu, sau mesajul nu exista.

Restricții și precizări
numerele din fișierul de intrare vor fi din intervalul (0, 1 000 000 000)

Exemplu
nrlipsa1.in

7 2 40 5 10 15 11 12 18 350
nrlipsa1.out

14 98

Solutie

<include<fstream>

using namespace std;
long long int f[200];
int main()
{
ifstream cin(“nrlipsa1.in”);
ofstream cout(“nrlipsa1.out”);
long long int n,a=100,b=0,ok=0;
while(cin >> n)
{
if(n%100==n)
f[n]++;
}
for(int i=10;i<100;i+=2) { if(f[i]==0) { ok=1; a=i; break; } } if(ok==0) { cout<<“nu exista”; return 0; } for(int i=98;i>9;i-=2)
{
if(f[i]==0&&i!=a)
{
cout<<a<<” “;
cout<<i;
ok=3;
break;
}
}
if(ok!=3)
cout<<“nu exista”;
return 0;
}

%d bloggers like this: