👤
Infoteme
a fost răspuns

1665 PbInfo
Considerăm şirul a cu n numere naturale nenule distincte două câte două şi un număr x. Scrieţi un program care determină poziţia pe care se va găsi numărul x în şirul a, dacă acesta ar fi ordonat descrescător.

Date de intrare
Programul citește de la tastatură numerele n şi x, urmate de n numere naturale reprezentând elementele şirului a.

Date de ieșire
Programul va afișa pe ecran poziţia determinată mai sus. Dacă numărul x nu se regăseşte în şir, valoarea afişată va fi -1.

Restricții și precizări
1 ≤ n < 200000
cele n numere citite vor fi mai mici decât 10 9
considerăm elementele şirului a numerotate de la 1 la n
Obtin 40pct cu codul:
#include
#define LIM 2001 //daca pun mai mult imi da fatal signal 11
using namespace std;
unsigned int n,x,a[LIM],y;//daca pun mai mult de 2001 eroare fatal signal 11
bool gasit=false;
//caut cate elemente sunt mai mari decat x, acelea vor fi inaintea lui x la o ordonare descrescatoare
//de x se afla pe pozitia y+1
//daca x nu e in sir, atunci -1
int main(){

cin>>n>>x;
for(unsigned int i=1;i<=n;i++){
cin>>a[i];
if(a[i]>x) y++;
else if(a[i]==x) gasit=true;
}
if(gasit==false) cout<<-1;
else cout< return 0;
}