#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 |
![]() |
---|---|---|---|
Limita timp | 0.1 secunde | Limita memorie |
Total: 64 MB
/
Stivă 8 MB
|
Id soluție | #43400443 | Utilizator | |
Fișier | rucsac.c | Dimensiune | 849 B |
Data încărcării | 24 Aprilie 2023, 17:46 | Scor / rezultat | Eroare de compilare |
rucsac.c: In function 'main': rucsac.c:21:28: error: request for member 'greutate' in something not a structure or union scanf("%d%d", &v[i].greutate, &v[i].val); ^ rucsac.c:21:44: error: request for member 'val' in something not a structure or union scanf("%d%d", &v[i].greutate, &v[i].val); ^ rucsac.c:22:31: warning: passing argument 4 of 'qsort' from incompatible pointer type [enabled by default] qsort(v, n, sizeof(struct obiect), comp); ^ In file included from rucsac.c:2:0: /usr/include/stdlib.h:765:13: note: expected '__compar_fn_t' but argument is of type 'int (*)(void *, void *)' extern void qsort (void *__base, size_t __nmemb, size_t __size, ^ rucsac.c:27:16: error: request for member 'greutate' in something not a structure or union if(v[i].greutate<=gmax) ^ rucsac.c:29:26: error: request for member 'val' in something not a structure or union val_max+=v[i].val; ^ rucsac.c:30:23: error: request for member 'greutate' in something not a structure or union gmax-=v[i].greutate; ^ rucsac.c:34:40: error: request for member 'val' in something not a structure or union val_max+=gmax*((double)v[i].val/v[i].greutate); ^ rucsac.c:34:49: error: request for member 'greutate' in something not a structure or union val_max+=gmax*((double)v[i].val/v[i].greutate); ^ rucsac.c:19:10: warning: ignoring return value of 'scanf', declared with attribute warn_unused_result [-Wunused-result] scanf("%d%d", &n, &gmax); ^
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ă.