#4999
Jocul DJ (“Dublu sau Jumate”) este noua provocare pentru concurenții de la ONI 2026.
La începutul jocului primiți un șir de numere naturale.
Scopul jocului este de a egaliza valorile din șir, adică de a transforma șirul dat într-un șir cu toate elementele egale. Pentru aceasta, aveți la dispoziție două tipuri de operații:
𝑥 din șir și se înlocuiește cu 𝑥 · 2 + 1;𝑥 din șir și se înlocuiește cu câtul împărțirii întregi dintre 𝑥 și 2.Dat fiind un șir de numere naturale, scrieți un program care determină numărul total minim de operații necesare pentru egalizarea valorilor din șir.
ONI 2026, clasa a 8-a
| Problema | DJ | Operații I/O |
dj.in/dj.out
|
|---|---|---|---|
| Limita timp | 1.5 secunde | Limita memorie |
Total: 32 MB
/
Stivă 8 MB
|
| Id soluție | #64012968 | Utilizator | |
| Fișier | dj.cpp | Dimensiune | 1.61 KB |
| Data încărcării | 05 Aprilie 2026, 17:44 | Scor/rezultat | 100 puncte |
dj.cpp: In function 'int main()': dj.cpp:5:33: warning: ignoring return value of 'FILE* freopen(const char*, const char*, FILE*)', declared with attribute warn_unused_result [-Wunused-result] freopen("dj.in", "r", stdin); ^ dj.cpp:6:35: warning: ignoring return value of 'FILE* freopen(const char*, const char*, FILE*)', declared with attribute warn_unused_result [-Wunused-result] freopen("dj.out", "w", stdout); ^
| Test | Timp | Mesaj evaluare | Scor posibil | Scor obținut | ||
|---|---|---|---|---|---|---|
| 1 | 0 secunde | OK. | 2 | 2 | ||
| 2 | 0 secunde | OK. | 2 | 2 | ||
| 3 | 0 secunde | OK. | 2 | 2 | ||
| 4 | 0 secunde | OK. | 2 | 2 | ||
| 5 | 0 secunde | OK. | 2 | 2 | ||
| 6 | 0 secunde | OK. | 2 | 2 | ||
| 7 | 0 secunde | OK. | 2 | 2 | ||
| 8 | 0 secunde | OK. | 2 | 2 | ||
| 9 | 0 secunde | OK. | 2 | 2 | ||
| 10 | 0 secunde | OK. | 2 | 2 | ||
| 11 | 0 secunde | OK. | 2 | 2 | ||
| 12 | 0 secunde | OK. | 2 | 2 | ||
| 13 | 0 secunde | OK. | 2 | 2 | ||
| 14 | 0 secunde | OK. | 2 | 2 | ||
| 15 | 0 secunde | OK. | 2 | 2 | ||
| 16 | 0 secunde | OK. | 2 | 2 | ||
| 17 | 0.004 secunde | OK. | 2 | 2 | ||
| 18 | 0.004 secunde | OK. | 2 | 2 | ||
| 19 | 0.004 secunde | OK. | 2 | 2 | ||
| 20 | 0.004 secunde | OK. | 2 | 2 | ||
| 21 | 0 secunde | OK. | 2 | 2 | ||
| 22 | 0 secunde | OK. | 2 | 2 | ||
| 23 | 0 secunde | OK. | 2 | 2 | ||
| 24 | 0 secunde | OK. | 3 | 3 | ||
| 25 | 0 secunde | OK. | 4 | 4 | ||
| 26 | 0 secunde | OK. | 4 | 4 | ||
| 27 | 0 secunde | OK. | 4 | 4 | ||
| 28 | 0 secunde | OK. | 4 | 4 | ||
| 29 | 0 secunde | OK. | 4 | 4 | ||
| 30 | 0 secunde | OK. | 2 | 2 | ||
| 31 | 0.004 secunde | OK. | 2 | 2 | ||
| 32 | 0.024 secunde | OK. | 2 | 2 | ||
| 33 | 0 secunde | OK. | 2 | 2 | ||
| 34 | 0.004 secunde | OK. | 2 | 2 | ||
| 35 | 0.004 secunde | OK. | 2 | 2 | ||
| 36 | 0.012 secunde | OK. | 2 | 2 | ||
| 37 | 0.052 secunde | OK. | 2 | 2 | ||
| 38 | 0.044 secunde | OK. | 3 | 3 | ||
| 39 | 0.412 secunde | OK. | 4 | 4 | ||
| 40 | 0.008 secunde | OK. | 4 | 4 | ||
| 41 | 0.468 secunde | OK. | 4 | 4 | ||
| Punctaj total | 100 | |||||
www.pbinfo.ro permite evaluarea a două tipuri de probleme:
Problema DJ 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ă.