ioCode
Sac à dos
Gloutons • Exercices 1A
- Écrire une fonction1IndiceTrier la liste des objets par valeur décroissante (utiliser
sorted(L, reverse=True)) puis parcourir les éléments pour vérifier la capacité restante du sac et accumuler les objets.kp_vmax(objets, Pmax) -> list[tuple[int, int]]qui renvoie la liste des objets sélectionnés en utilisant l'heuristique de la valeur maximale de l'objet en premier. Par exemplekp_vmax([(60, 10), (100, 20), (120, 30), (54, 9)], 30)renvoie[(120, 30)]. - Écrire une fonction2IndiceCalculer le ratio valeur sur poids pour chaque objet puis trier ces ratios par ordre décroissant pour appliquer la même logique de sélection.
kp_ratios(objets, Pmax) -> list[tuple[int, int]]qui renvoie la liste des objets sélectionnés en privilégiant le ratio valeur/poids maximal. Par exemplekp_ratios([(60, 10), (100, 20), (120, 30), (54, 9)], 30)renvoie[(60, 10), (54, 9)].
Langage
Console initialisée. En attente de l'interpréteur...