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(){
Cam asta ar fi o soluţie la problema asta. Desigur, se poate aborda în mai multe moduri. Ai aici o rezolvare clasică făcută de mine şi pe pbinfo e evaluată la 100 de puncte. Succes!