#1247
Torturi
Adela lucrează la un laborator de cofetărie. Ea trebuie să pregătească două torturi de nuntă şi în acest scop va folosi n
blaturi de tort. Blaturile de tort au formă cilindrică, având toate aceeaşi înălţime, eventual diametre diferite. Blaturile ies pe rând din cuptor. Când un blat iese din cuptor, Adela îl va aşeza deasupra uneia dintre cele două stive de blaturi aflate pe cele două tăvi pe care se pregătesc torturile.
Blaturile diferă între ele prin rezistenţa la presiune. Rezistenţa unui blat creşte odată cu creşterea diametrului. Astfel, un blat va suporta deasupra sa oricâte alte blaturi cu diametre mai mici sau egale cu diametrul său. Pe de altă parte, dacă se aşează un blat de diametru d
, deasupra altuia de diametru mai mic, atunci atât blatul aflat imediat dedesubt, cât şi toate blaturile din tort cu diametrul mai mic decât d
vor colapsa. Blatul de diametru d
se va stabiliza pe un blat cu diametru mai mare sau egal cu al său sau după caz, pe fundul tăvii.
Adela trebuie să folosească toate cele n
blaturi pentru pregătirea celor două torturi, şi să le aşeze pe cele două tăvi, în ordinea în care blaturile ies din cuptor. Dorinţa Adelei este ca numărul total de blaturi care nu vor colapsa în cele două torturi să fie maximă.
Cunoscând diametrele blaturilor şi ordinea în care acestea ies din cuptor, să se determine numărul maxim de blaturi care nu vor colapsa.
Lot Juniori Severin, 2015
Problema | Torturi | Operații I/O |
torturi.in /torturi.out
|
---|---|---|---|
Limita timp | 0.08 secunde | Limita memorie |
Total: 64 MB
/
Stivă 8 MB
|
Id soluție | #52692528 | Utilizator | |
Fișier | torturi.cpp | Dimensiune | 1.62 KB |
Data încărcării | 07 Octombrie 2024, 11:48 | Scor / rezultat | 100 puncte |
torturi.cpp: In function 'int main()': torturi.cpp:23:38: warning: ignoring return value of 'FILE* freopen(const char*, const char*, FILE*)', declared with attribute warn_unused_result [-Wunused-result] freopen("torturi.in", "r", stdin); ^ torturi.cpp:24:40: warning: ignoring return value of 'FILE* freopen(const char*, const char*, FILE*)', declared with attribute warn_unused_result [-Wunused-result] freopen("torturi.out", "w", stdout); ^ torturi.cpp: In function 'void Next()': torturi.cpp:82:44: warning: ignoring return value of 'size_t fread(void*, size_t, size_t, FILE*)', declared with attribute warn_unused_result [-Wunused-result] std::fread(s, 1, Lim, stdin), p = 0; ^
Test | Timp | Mesaj evaluare | Scor posibil | Scor obținut | ||
---|---|---|---|---|---|---|
0 | 0 secunde | OK. | 5 | 5 | ||
1 | 0 secunde | OK. | 5 | 5 | ||
2 | 0 secunde | OK. | 5 | 5 | ||
3 | 0 secunde | OK. | 5 | 5 | ||
4 | 0 secunde | OK. | 5 | 5 | ||
5 | 0 secunde | OK. | 5 | 5 | ||
6 | 0 secunde | OK. | 5 | 5 | ||
7 | 0 secunde | OK. | 5 | 5 | ||
8 | 0 secunde | OK. | 5 | 5 | ||
9 | 0 secunde | OK. | 5 | 5 | ||
10 | 0 secunde | OK. | 5 | 5 | ||
11 | 0.004 secunde | OK. | 5 | 5 | ||
12 | 0.004 secunde | OK. | 5 | 5 | ||
13 | 0.008 secunde | OK. | 5 | 5 | ||
14 | 0.008 secunde | OK. | 5 | 5 | ||
15 | 0.008 secunde | OK. | 5 | 5 | ||
16 | 0.02 secunde | OK. | 5 | 5 | ||
17 | 0.02 secunde | OK. | 5 | 5 | ||
18 | 0.02 secunde | OK. | 5 | 5 | ||
19 | 0.02 secunde | OK. | 5 | 5 | ||
Punctaj total | 100 |
www.pbinfo.ro permite evaluarea a două tipuri de probleme:
Problema Torturi 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ă.