381
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 ≤ 10000Xşi elementele şirului vor avea cel mult9cifre
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;
}
Comentarii