Do firmy transportowej, która zajmuje się przewozem kontenerów, regularnie przyjeżdżają różne tiry, każdy o odmiennej ładowności. Magazyn firmy zawiera kontenery o zróżnicowanej wadze oraz wartości przewożonych towarów.
Firma chce maksymalizować zysk, wysyłając tiry w taki sposób, aby każdy z nich zabierał możliwie najbardziej wartościowy zestaw kontenerów, nie przekraczając przy tym swojej ładowności.
Napisz program, który dla podanej listy kontenerów będzie potrafił za każdym razem dobrać najbardziej opłacalny zestaw kontenerów dla tira o określonej pojemności.
Dane wejściowe mają postać dwóch list:
waga_kontenera = [100, 40, 70, 50]
wartosc_kontenera = [100, 200, 100, 500]
a) Oblicz listę jakości każdego kontenera, gdzie jakość oznacza stosunek wartość / waga.
b) Posortuj listę kontenerów malejąco według jakości (nie wolno używać wbudowanych funkcji sortujących).
c) Korzystając z algorytmu zachłannego i posortowanych danych, wybierz najbardziej opłacalny zestaw kontenerów, które można zmieścić na tir o ładowności podanej przez użytkownika.
