#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 | #64676384 | Utilizator | |
| Fișier | dj.cpp | Dimensiune | 1.89 KB |
| Data încărcării | 22 Mai 2026, 08:23 | Scor/rezultat | Eroare de compilare |
In file included from /usr/include/c++/13/bits/requires_hosted.h:31, from /usr/include/c++/13/fstream:38, from dj.cpp:1: /usr/include/c++/13/bits/stl_deque.h: In function ‘int main()’: /usr/include/c++/13/bits/stl_deque.h:72:15: error: expected ‘=’ before ‘__attribute__’ 72 | namespace std _GLIBCXX_VISIBILITY(default) | ^~~~~~~~~~~~~~~~~~~ /usr/include/c++/13/bits/stl_deque.h:72:15: error: expected identifier before ‘__attribute__’ In file included from /usr/include/c++/13/deque:66, from /usr/include/c++/13/queue:62, from dj.cpp:39: /usr/include/c++/13/bits/stl_deque.h:72:14: error: expected ‘;’ before ‘__attribute__’ 72 | namespace std _GLIBCXX_VISIBILITY(default) | ^ | ; /usr/include/c++/13/bits/stl_deque.h:73:1: error: expected primary-expression before ‘{’ token 73 | { | ^ /usr/include/c++/13/bits/deque.tcc:61:15: error: expected ‘=’ before ‘__attribute__’ 61 | namespace std _GLIBCXX_VISIBILITY(default) | ^~~~~~~~~~~~~~~~~~~ /usr/include/c++/13/bits/deque.tcc:61:15: error: expected identifier before ‘__attribute__’ In file included from /usr/include/c++/13/deque:69: /usr/include/c++/13/bits/deque.tcc:61:14: error: expected ‘;’ before ‘__attribute__’ 61 | namespace std _GLIBCXX_VISIBILITY(default) | ^ | ; /usr/include/c++/13/bits/deque.tcc:62:1: error: expected primary-expression before ‘{’ token 62 | { | ^ /usr/include/c++/13/bits/stl_heap.h:63:15: error: expected ‘=’ before ‘__attribute__’ 63 | namespace std _GLIBCXX_VISIBILITY(default) | ^~~~~~~~~~~~~~~~~~~ /usr/include/c++/13/bits/stl_heap.h:63:15: error: expected identifier before ‘__attribute__’ In file included from /usr/include/c++/13/queue:64: /usr/include/c++/13/bits/stl_heap.h:63:14: error: expected ‘;’ before ‘__attribute__’ 63 | namespace std _GLIBCXX_VISIBILITY(default) | ^ | ; /usr/include/c++/13/bits/stl_heap.h:64:1: error: expected primary-expression before ‘{’ token 64 | { | ^ /usr/include/c++/13/bits/uses_allocator.h:40:15: error: expected ‘=’ before ‘__attribute__’ 40 | namespace std _GLIBCXX_VISIBILITY(default) | ^~~~~~~~~~~~~~~~~~~ /usr/include/c++/13/bits/uses_allocator.h:40:15: error: expected identifier before ‘__attribute__’ In file included from /usr/include/c++/13/bits/stl_queue.h:62, from /usr/include/c++/13/queue:66: /usr/include/c++/13/bits/uses_allocator.h:40:14: error: expected ‘;’ before ‘__attribute__’ 40 | namespace std _GLIBCXX_VISIBILITY(default) | ^ | ; /usr/include/c++/13/bits/uses_allocator.h:41:1: error: expected primary-expression before ‘{’ token 41 | { | ^ /usr/include/c++/13/bits/stl_queue.h:65:15: error: expected ‘=’ before ‘__attribute__’ 65 | namespace std _GLIBCXX_VISIBILITY(default) | ^~~~~~~~~~~~~~~~~~~ /usr/include/c++/13/bits/stl_queue.h:65:15: error: expected identifier before ‘__attribute__’ /usr/include/c++/13/bits/stl_queue.h:65:14: error: expected ‘;’ before ‘__attribute__’ 65 | namespace std _GLIBCXX_VISIBILITY(default) | ^ | ; /usr/include/c++/13/bits/stl_queue.h:66:1: error: expected primary-expression before ‘{’ token 66 | { | ^ dj.cpp:55:9: warning: empty parentheses were disambiguated as a function declaration [-Wvexing-parse] 55 | int main() { | ^~ dj.cpp:55:9: note: remove parentheses to default-initialize a variable 55 | int main() { | ^~ | -- dj.cpp:55:9: note: or replace parentheses with braces to value-initialize a variable dj.cpp:55:12: error: a function-definition is not allowed here before ‘{’ token 55 | int main() { | ^ dj.cpp:49:5: warning: unused variable ‘seen’ [-Wunused-variable] 49 | int seen[MAXV]; | ^~~~ dj.cpp:50:5: warning: unused variable ‘freq’ [-Wunused-variable] 50 | int freq[MAXV]; | ^~~~ dj.cpp:53:5: warning: unused variable ‘dista’ [-Wunused-variable] 53 | int dista[MAXV]; | ^~~~~
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ă.