#4260
Folosind metoda Divide et Impera, scrieți funcția recursivă cu antetul
int NrXDivImp(int a[], int st, int dr, int x)
care primind ca parametri un vector a de numere întregi și trei numere întregi st, dr și x, returnează numărul de apariții ale numărului x în secvența a[st], a[st+1], ..., a[dr].
| Problema | NrXDivImp | Operații I/O |
nrxdivimp.in/nrxdivimp.out
|
|---|---|---|---|
| Limita timp | 0.1 secunde | Limita memorie |
Total: 64 MB
/
Stivă 8 MB
|
| Id soluție | #64293327 | Utilizator | |
| Fișier | nrxdivimp.cpp | Dimensiune | 193 B |
| Data încărcării | 28 Aprilie 2026, 12:13 | Scor/rezultat | Eroare de compilare |
nrxdivimp.cpp: In function ‘int NrXDivImp(int*, int, int, int)’: nrxdivimp.cpp:6:33: error: expected ‘;’ before ‘int’ 6 | if(st==dr) return (a[st]==x) | ^ | ; 7 | int mij=st+dr; return 1; | ~~~ nrxdivimp.cpp:8:12: error: expected primary-expression before ‘int’ 8 | return int NrXDivImp(a,st,mj,x)+int NrXDivImp(a,mij+1,dr,x); | ^~~ nrxdivimp.cpp:8:11: error: expected ‘;’ before ‘int’ 8 | return int NrXDivImp(a,st,mj,x)+int NrXDivImp(a,mij+1,dr,x); | ^~~~ | ; nrxdivimp.cpp:8:31: error: ‘mj’ was not declared in this scope; did you mean ‘mij’? 8 | return int NrXDivImp(a,st,mj,x)+int NrXDivImp(a,mij+1,dr,x); | ^~ | mij nrxdivimp.cpp:8:35: error: expression list treated as compound expression in initializer [-fpermissive] 8 | return int NrXDivImp(a,st,mj,x)+int NrXDivImp(a,mij+1,dr,x); | ^ nrxdivimp.cpp:8:26: warning: left operand of comma operator has no effect [-Wunused-value] 8 | return int NrXDivImp(a,st,mj,x)+int NrXDivImp(a,mij+1,dr,x); | ^ nrxdivimp.cpp:7:9: warning: unused variable ‘mij’ [-Wunused-variable] 7 | int mij=st+dr; return 1; | ^~~ nrxdivimp.cpp:8:16: warning: unused variable ‘NrXDivImp’ [-Wunused-variable] 8 | return int NrXDivImp(a,st,mj,x)+int NrXDivImp(a,mij+1,dr,x); | ^~~~~~~~~
www.pbinfo.ro permite evaluarea a două tipuri de probleme:
Problema NrXDivImp face parte din a doua categorie. Pentru aceste probleme se folosește un program suport, furnizat de propunătorul problemei. Soluția propusă de tine va fi evaluată astfel:
Suma punctajelor acordate pe testele utilizate pentru verificare este 100. Astfel, soluția ta poate obține cel mult 100 de puncte, caz în care se poate considera corectă.