Cerința
Se dau două numere naturale i p
și o listă cu numere naturale. Să se determine al p
-lea element par din listă și al i
-lea element impar din listă.
Date de intrare
Fișierul de intrare parimpar2.in
conține pe prima linie numerele i
și p
, iar pe a doua linie mai multe numere naturale separate prin spații.
Date de ieșire
Fișierul de ieșire parimpar2.out
va conține două numere separate printr-un spațiu, primul reprezentând al p
-lea element par, iar al doilea număr reprezentând al i
-lea element impar din lista numerelor din fișierul de intrare. Dacă nu avem p
elemente pare sau i
elemente impare se va afișa mesajul Nu Exista
.
Restricții și precizări
1 ≤ i,p ≤ 100.000
- numerele de pe a doua linie a fișierului de intrare vor fi mai mici decât
1.000.000.000
Exemplu
parimpar2.in
2 2 63 83 60 34 92
parimpar2.out
34 83
Explicație
Primul element par este 60
, iar al doilea este 34
. Primul element impar este 63
, iar al doilea este 83
. Deci se va afișa în fișierul de ieșire 34 83
.
parimpar2.in
3 2 37 93 6 49 9 59
parimpar2.out
Nu Exista
Explicație
În fișier se găsesc 3
numere impare, dar se găsește doar unul par.
#include <bits/stdc++.h> using namespace std; ifstream cin("parimpar2.in"); ofstream cout("parimpar2.out"); int a, b; int main(){ cin >> a >> b; int x, rez1 = 0, rez2 = -1; while(cin >> x){ if(x % 2 == 1){ a--; if(a == 0) rez1 = x; } else{ b--; if(b==0) rez2 = x; } } if(rez1 == 0 || rez2 == -1) cout << "Nu Exista"; else cout << rez2 << ' ' << rez1; return 0; }