#4655
mandms
Andra are un pachet cu n
tipuri de buline de ciocolată, cu câte c[i]
buline de fiecare tip i
. Andra dorește să utilizeze toate bulinele pentru a construi piramide, fiecare fiind formată din unul sau mai multe rânduri, numerotate începând de la 1
. Pentru fiecare piramidă în parte, pe rândul i
, se află 2
i-1
buline. Spre exemplu, pe rândul 8
al unei piramide, se află 2
7
= 128
de buline de ciocolată. Pe fiecare rând al unei piramide se află unul sau mai multe tipuri de buline, iar același tip de buline se poate folosi pe oricâte rânduri. Dintre piramidele care se pot forma, cele serioase conțin pe fiecare rând doar un tip de buline. Folosind toate bulinele, ajutați-o pe Andra să determine:
1) Numărul minim de piramide de ciocolată pe care le poate forma.
2) Numărul minim de piramide serioase de ciocolată pe care le poate forma, astfel încât toate cele obținute să fie de acest fel.
ONI 2024, clasa a 8-a
Problema | mandms | Operații I/O |
![]() mandms.in /mandms.out
|
---|---|---|---|
Limita timp | 0.5 secunde | Limita memorie |
Total: 64 MB
/
Stivă 8 MB
|
Id soluție | #58568155 | Utilizator | |
Fișier | mandms.cpp | Dimensiune | 3.30 KB |
Data încărcării | 20 Iunie 2025, 18:15 | Scor / rezultat | Eroare de compilare |
mandms.cpp:6:29: error: expected ',' or '...' before '__int128' int count_set_bits(unsigned __int128 n) { ^ mandms.cpp: In function 'int count_set_bits(unsigned int)': mandms.cpp:7:9: error: 'n' was not declared in this scope if (n == 0) return 0; ^ mandms.cpp:9:53: error: 'n' was not declared in this scope unsigned long long part1 = (unsigned long long)(n >> 64); ^ mandms.cpp: In function 'void solve_p1()': mandms.cpp:23:14: error: expected unqualified-id before '__int128' unsigned __int128 total_sum = 0; ^ mandms.cpp:26:5: error: 'total_sum' was not declared in this scope total_sum += current_c; ^ mandms.cpp:30:18: error: expected unqualified-id before '__int128' unsigned __int128 temp_prod = (unsigned __int128)current_c * y; ^ mandms.cpp:31:21: error: 'temp_prod' was not declared in this scope current_c = temp_prod % t + z; ^ mandms.cpp: In function 'void solve_p2()': mandms.cpp:64:22: error: expected unqualified-id before '__int128' unsigned __int128 temp_prod = (unsigned __int128)current_c * y; ^ mandms.cpp:65:25: error: 'temp_prod' was not declared in this scope current_c = temp_prod % t + z; ^
www.pbinfo.ro permite evaluarea a două tipuri de probleme:
Problema mandms 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ă.