#1044
Fascinat de Egiptul Antic, Rareș vrea să construiască cât mai multe piramide din cartonașe pătratice identice. El are la dispoziție N cartonașe numerotate de la 1 la N, albe sau gri, așezate în ordinea strict crescătoare a numerelor.
1 și 2 așezate alăturat, peste care va așeza cartonașul 3 (vârful piramidei).4, 5 și 6 așezate alăturat, deasupra cărora se vor așeza cartonașele 7 și 8, alăturate, peste care se va așeza cartonașul 9 (vârful piramidei).4 cartonașe (cu numerele de la 10 la 13), respectiv 5 cartonașe (cu numerele de la 20 la 24), 6 cartonașe (cu numerele de la 35 la 40) etc., cât timp va putea construi o piramidă completă. De exemplu, dacă Rareș are N=75 cartonașe atunci el va construi piramidele complete 1, 2, 3, 4 și 5 din imaginile următoare. Din cele 75 de cartonașe el va folosi doar primele 55 de cartonașe, deoarece ultimele 20 cartonașe nu sunt suficiente pentru a construi piramida 6, cu baza formată din 7 cartonașe.
Scrieţi un program care să citească numerele naturale N (reprezentând numărul de cartonașe), X (reprezentând numărul unui cartonaș), K (reprezentând numărul de cartonașe albe), numerele celor K cartonașe albe c1, c2, …, cK și care să determine:
a) numărul P al piramidei complete ce conține cartonașul numerotat cu X;
b) numărul M maxim de piramide complete construite de Rareș;
c) numărul C de cartonașe nefolosite;
d) numărul A al primei piramide complete care conține cele mai multe cartonașe albe.
OJI 2014, Clasa a V-a
| Problema | Piramide | Operații I/O |
piramide.in/piramide.out
|
|---|---|---|---|
| Limita timp | 0.5 secunde | Limita memorie |
Total: 2 MB
/
Stivă 2 MB
|
| Id soluție | #64021450 | Utilizator | |
| Fișier | piramide.cpp | Dimensiune | 1.28 KB |
| Data încărcării | 07 Aprilie 2026, 14:54 | Scor/rezultat | Eroare de compilare |
piramide.cpp: In function 'int main()': piramide.cpp:58:21: error: expected initializer before 'maxi' int maxi = 0, p maxi =0; ^ piramide.cpp:64:13: error: 'pmaxi' was not declared in this scope pmaxi = cnt; ^ piramide.cpp:74:13: error: 'pmaxi' was not declared in this scope fout << pmaxi; ^ piramide.cpp:11:9: warning: unused variable 'c' [-Wunused-variable] int c; ^ piramide.cpp:16:10: warning: unused variable 'ok' [-Wunused-variable] bool ok = true; ^
www.pbinfo.ro permite evaluarea a două tipuri de probleme:
Problema Piramide 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ă.