#4967
Collatz are 𝑇 vectori, fiecare vector 𝑖 (1 ≤ i ≤ T) fiind format inițial din numerele naturale consecutive de la Si la Di. După părerea lui, un vector îngrijit are toate elementele egale cu 1. Deoarece lui Collatz îi plac vectorii îngrijiți, el își dorește ca toate elementele vectorilor să devină 1, așa că transformă pe rând vectorii, aplicând pentru fiecare un număr minim de operații. O operație constă din alegerea unui element al vectorului și apoi:
x, atunci valoarea lui devine 2 • 𝑥 + 2.Pentru fiecare dintre cei T vectori, determinați numărul minim de operații prin care poate deveni îngrijit.
OJI 2026, clasa a 9-a
| Problema | Collatz1 | Operații I/O |
collatz.in/collatz.out
|
|---|---|---|---|
| Limita timp | 0.5 secunde | Limita memorie |
Total: 64 MB
/
Stivă 8 MB
|
| Id soluție | #65019655 | Utilizator | |
| Fișier | collatz1.cpp | Dimensiune | 1.44 KB |
| Data încărcării | 16 Iulie 2026, 14:13 | Scor/rezultat | Eroare de compilare |
collatz1.cpp:8:13: error: ‘uint_fast64_t’ does not name a type 8 | using u64 = uint_fast64_t; | ^~~~~~~~~~~~~ collatz1.cpp:9:13: error: ‘uint_fast16_t’ does not name a type 9 | using u16 = uint_fast16_t; | ^~~~~~~~~~~~~ collatz1.cpp:10:1: error: ‘u16’ does not name a type 10 | u16 collatzArr[3777216] = {}; | ^~~ collatz1.cpp:11:1: error: ‘u64’ does not name a type 11 | u64 first[1000]; | ^~~ collatz1.cpp:12:1: error: ‘u64’ does not name a type 12 | u64 last[1000]; | ^~~ collatz1.cpp:14:8: error: ‘u64’ does not name a type 14 | inline u64 FirstCollatz(u64 nr) { | ^~~ collatz1.cpp:30:8: error: ‘u64’ does not name a type 30 | inline u64 SmartCollatz(u64 nr) { | ^~~ collatz1.cpp: In function ‘int main()’: collatz1.cpp:63:17: error: ‘collatzArr’ was not declared in this scope 63 | collatzArr[i] = FirstCollatz(i); | ^~~~~~~~~~ collatz1.cpp:63:33: error: ‘FirstCollatz’ was not declared in this scope 63 | collatzArr[i] = FirstCollatz(i); | ^~~~~~~~~~~~ collatz1.cpp:70:24: error: ‘first’ was not declared in this scope 70 | fin >> first[i] >> last[i]; | ^~~~~ collatz1.cpp:70:36: error: ‘last’ was not declared in this scope 70 | fin >> first[i] >> last[i]; | ^~~~ collatz1.cpp:73:17: error: ‘u64’ was not declared in this scope 73 | u64 perm = 0; | ^~~ collatz1.cpp:75:25: error: expected ‘;’ before ‘ind’ 75 | for (u64 ind = first[i]; ind <= last[i]; ind++) { | ^~~~ | ; collatz1.cpp:75:42: error: ‘ind’ was not declared in this scope; did you mean ‘int’? 75 | for (u64 ind = first[i]; ind <= last[i]; ind++) { | ^~~ | int collatz1.cpp:75:49: error: ‘last’ was not declared in this scope 75 | for (u64 ind = first[i]; ind <= last[i]; ind++) { | ^~~~ collatz1.cpp:76:28: error: expected ‘;’ before ‘nr’ 76 | u64 nr = ind; | ^~~ | ; collatz1.cpp:77:25: error: ‘perm’ was not declared in this scope 77 | perm += SmartCollatz(nr); | ^~~~ collatz1.cpp:77:46: error: ‘nr’ was not declared in this scope 77 | perm += SmartCollatz(nr); | ^~ collatz1.cpp:77:33: error: ‘SmartCollatz’ was not declared in this scope 77 | perm += SmartCollatz(nr); | ^~~~~~~~~~~~ collatz1.cpp:80:25: error: ‘perm’ was not declared in this scope 80 | fout << perm << "\n"; | ^~~~
www.pbinfo.ro permite evaluarea a două tipuri de probleme:
Problema Collatz1 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ă.