#1340
Într-un magazin sunt n obiecte; pentru fiecare se cunoaște greutatea G și valoarea V. Un hoț intră în magazin având un rucsac ce poate transporta o greutate maximă GMax. El va fura anumite obiecte, sau porțiuni de obiecte, astfel încât suma greutăților obiectelor furate să nu depășească GMax.
Să se stabilească câștigul maxim pe care îl poate obține hoțul. Câștigul este egal cu suma valorilor obiectelor furate. Câștigul adus de o fracțiune de obiect este direct proporțional cu greutatea fracțiunii.
| Problema | Rucsac | Operații I/O |
tastatură/ecran
|
|---|---|---|---|
| Limita timp | 0.1 secunde | Limita memorie |
Total: 64 MB
/
Stivă 8 MB
|
| Id soluție | #64514377 | Utilizator | |
| Fișier | rucsac.cpp | Dimensiune | 671 B |
| Data încărcării | 12 Mai 2026, 09:06 | Scor/rezultat | Eroare de compilare |
rucsac.cpp: In function ‘int main()’: rucsac.cpp:8:11: error: invalid types ‘double [1001][double]’ for array subscript 8 | cin>>g[i]>>v[i]; | ^ rucsac.cpp:8:17: error: invalid types ‘double [1001][double]’ for array subscript 8 | cin>>g[i]>>v[i]; | ^ rucsac.cpp:11:9: error: invalid types ‘double [1001][double]’ for array subscript 11 | if(v[i]/g[i]<v[j]/g[j]){ | ^ rucsac.cpp:11:14: error: invalid types ‘double [1001][double]’ for array subscript 11 | if(v[i]/g[i]<v[j]/g[j]){ | ^ rucsac.cpp:11:19: error: invalid types ‘double [1001][double]’ for array subscript 11 | if(v[i]/g[i]<v[j]/g[j]){ | ^ rucsac.cpp:11:24: error: invalid types ‘double [1001][double]’ for array subscript 11 | if(v[i]/g[i]<v[j]/g[j]){ | ^ rucsac.cpp:12:14: error: invalid types ‘double [1001][double]’ for array subscript 12 | aux=v[i]; | ^ rucsac.cpp:13:10: error: invalid types ‘double [1001][double]’ for array subscript 13 | v[i]=v[j]; | ^ rucsac.cpp:13:15: error: invalid types ‘double [1001][double]’ for array subscript 13 | v[i]=v[j]; | ^ rucsac.cpp:14:10: error: invalid types ‘double [1001][double]’ for array subscript 14 | v[j]=aux; | ^ rucsac.cpp:15:14: error: invalid types ‘double [1001][double]’ for array subscript 15 | aux=g[i]; | ^ rucsac.cpp:16:10: error: invalid types ‘double [1001][double]’ for array subscript 16 | g[i]=g[j]; | ^ rucsac.cpp:16:15: error: invalid types ‘double [1001][double]’ for array subscript 16 | g[i]=g[j]; | ^ rucsac.cpp:17:10: error: invalid types ‘double [1001][double]’ for array subscript 17 | g[j]=aux; | ^ rucsac.cpp:23:22: error: invalid types ‘double [1001][double]’ for array subscript 23 | if(greutate+g[i]<=gmax){ | ^ rucsac.cpp:24:20: error: invalid types ‘double [1001][double]’ for array subscript 24 | greutate+=g[i]; | ^ rucsac.cpp:25:13: error: invalid types ‘double [1001][double]’ for array subscript 25 | c+=v[i];} | ^ rucsac.cpp:28:20: error: invalid types ‘double [1001][double]’ for array subscript 28 | c+=ramas*(v[i]/g[i]); | ^ rucsac.cpp:28:25: error: invalid types ‘double [1001][double]’ for array subscript 28 | c+=ramas*(v[i]/g[i]); | ^
www.pbinfo.ro permite evaluarea a două tipuri de probleme:
Problema Rucsac 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ă.