#4829
Maria inventează mereu câte ceva și îl provoacă la joacă pe fratele ei mai mic Petru. De data aceasta alege N cartonașe, pe care sunt înscrise valorile naturale distincte de la 1 la N (fiecare astfel de număr apare pe câte un singur cartonaș), le amestecă și le așează unul lângă altul într-un șir. Maria formulează lui Petru cerințe de următoarele tipuri:
1) Îți spun un număr poz și trebuie să determini cartonașul numerotat cu cea mai mare valoare r astfel încât primele r cartonașe din șir au înscrisă o valoare strict mai mică decât cea scrisă pe cartonașul numerotat cu poz. Dacă nu există niciun astfel de cartonaș, pentru r se stabilește valoarea 0.
2) Determină toate valorile p cu proprietatea că pe primele p cartonașe se află înscrise toate numerele naturale de la 1 la p.
3) Determină toate valorile p cu proprietatea că pe primele p cartonașe se află înscrise exact p-1 dintre numerele naturale de la 1 la p.
ONI 2025, clasa a 5-a
| Problema | cartonase4 | Operații I/O |
cartonase.in/cartonase.out
|
|---|---|---|---|
| Limita timp | 0.1 secunde | Limita memorie |
Total: 64 MB
/
Stivă 8 MB
|
| Id soluție | #64200818 | Utilizator | |
| Fișier | cartonase4.cpp | Dimensiune | 857 B |
| Data încărcării | 22 Aprilie 2026, 17:35 | Scor/rezultat | Eroare de compilare |
cartonase4.cpp: In function ‘void pct3(int, int*)’: cartonase4.cpp:29:1: error: expected unqualified-id before ‘for’ 29 | for (int i=0;i<n; i++){ | ^~~ cartonase4.cpp:29:14: error: ‘i’ was not declared in this scope 29 | for (int i=0;i<n; i++){ | ^ cartonase4.cpp:32:6: error: ‘s’ was not declared in this scope 32 | if ((s-mx)==p*(p-1)/2) cout<<p<<' '; | ^ cartonase4.cpp:32:8: error: ‘mx’ was not declared in this scope 32 | if ((s-mx)==p*(p-1)/2) cout<<p<<' '; | ^~ cartonase4.cpp:32:13: error: ‘p’ was not declared in this scope 32 | if ((s-mx)==p*(p-1)/2) cout<<p<<' '; | ^ cartonase4.cpp:33:8: error: ‘cnt’ was not declared in this scope; did you mean ‘int’? 33 | return cnt; | ^~~ | int
www.pbinfo.ro permite evaluarea a două tipuri de probleme:
Problema cartonase4 face parte din prima categorie. 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ă.