NSI (terminale) · Chapitre 7 · Exercice d'entraînement
Le chemin le moins coûteux dans une grille
La programmation dynamique · Problèmes d'optimisation · niveau 2
Énoncé
Le chemin le moins coûteux dans une grille.
Un robot traverse une grille de cases, chacune ayant un coût de passage. Il part de la case en haut à gauche, arrive à la case en bas à droite, et ne se déplace que vers la droite ou vers le bas. Le coût d'un trajet est la somme des coûts des cases traversées, départ et arrivée compris.
grille = [[1, 3, 1, 2],
[1, 5, 1, 4],
[4, 2, 1, 3],
[2, 6, 2, 1]]
- On note
cout[i][j]le coût minimal pour atteindre la case(i, j). Établir la relation de récurrence et les cas particuliers de la première ligne et de la première colonne. - Écrire une fonction
cout_min(grille), donner le coût minimal sur l'exemple, puis reconstruire un trajet optimal.
Un exercice à chercher : son corrigé n'est pas publié. Sur Adloun, le tuteur guide par questions, sans donner la réponse.