Cerinţa
Se dă un număr natural X
şi un şir cu n
numere naturale distincte două câte două. Să se determine poziţia pe care s-ar afla numărul X
în şirul ordonat crescător.
Date de intrare
Fişierul de intrare pozitiex.in
conţine pe prima linie numerele X
şi n
. Urmează n
numere naturale, dispuse pe mai multe linii, separate prin spaţii.
Date de ieşire
Fişierul de ieşire pozitiex.out
va conţine pe prima linie numărul p
, reprezentând poziţia în şirul ordonat crescător a primului element din şirul dat. Dacă numărul X
nu apare în şir, se va afişa mesajul NU EXISTA
.
Restricţii şi precizări
1 ≤ n ≤ 10000
X
şi elementele şirului vor avea cel mult9
cifre
Exemplu
pozitiex.in
79 6 267 13 45 628 7 79
pozitiex.out
4
Explicație
Şirul sortat este 7 13 45 79 267 628
. În acest şir, valoarea 79
se află pe poziţia a 4
-a.
#include <bits/stdc++.h> using namespace std; ifstream fin("pozitiex.in"); ofstream fout("pozitiex.out"); int main() { int x , n , cnt = 0 , a[10001]; fin >> x >> n; for (int i = 0 ; i < n ; ++i) fin >> a[i]; sort(a,a+n); for (int i = 0 ; i < n ; ++i) { if (a[i] == x) { fout << i+1; cnt++; } } if (cnt == 0) fout << "NU EXISTA"; fin.close(); fout.close(); return 0; }