URL: https://linuxfr.org/forums/programmationautre/posts/advent-of-code-jour-17 Title: Advent of Code, jour 17 Authors: Guillaume.B Date: 2023年12月17日T09:02:51+01:00 License: CC By-SA Tags: calendrier, aoc2023, code, aoc et avent Score: 0 Le problème d'aujourd'hui prend en entrée une grille composée de chiffres. L'exemple donné est le suivant: ``` 2413432311323 3215453535623 3255245654254 3446585845452 4546657867536 1438598798454 4457876987766 3637877979653 4654967986887 4564679986453 1224686865563 2546548887735 4322674655533 ``` Le but est d'acheminer de la lave qui démarre à la tuile en haut à gauche à une usine de pièces de machines dont la localisation est la tuile en bas à droite. Il s'agit donc de trouver un chemin (un creuset) dans la grille. Seulement le chemin a les contraintes suivantes: - chaque fois qu'il passe par une tuile (hormis la première), la lave perd le chiffre indiqué sur la tuile en chaleur; - dans la partie 1, il n'est pas possible d'aller plus de 3 fois consécutivement dans la même direction et il n'est pas possible de revenir en arrière. IL faut donc trouver un chemin qui minimise la perte de chaleur tout en satisfaisant les contraintes données. Par exemple, pour l'exemple donnée: la solution est la suivante: ``` 2>>34^>>>1323 32v>>>35v5623 32552456v>>54 3446585845v52 4546657867v>6 14385987984v4 44578769877v6 36378779796v> 465496798688v 456467998645v 12246868655 ``` Dans la partie 2, la dernière contrainte est remplacée par la suivante: lorsque l'on commence à aller dans une direction, il faut faire au moins 4 pas et au plus 10 pas dans cette direction. Comme dans la partie 1, on ne peut pas revenir en arrière.

AltStyle によって変換されたページ (->オリジナル) /