Pour la partie 2, on peut lancer un second Dijkstra en partant du sommet final.
J'ai préféré faire un parcours en profondeur (beaucoup plus rapide qu'un Dijkstra) et remonter jusqu'au sommet de départ en suivant les poids données par le Dijkstra de la partie 1.
260 microsecondes pour les 2 parties, la partie 2, utilisant les informations de la partie 1, ne prend que 5 microsecondes.
Je vais voir si je peux optimiser mon Dijkstra mais je ne vois pas trop comment faire pour l'instant.
[^] # Re: jour 16
Posté par Guillaume.B . En réponse au journal Advent of code 2024. Évalué à 3.
Oui, facile si on connaît Dijkstra.
Pour la partie 2, on peut lancer un second Dijkstra en partant du sommet final.
J'ai préféré faire un parcours en profondeur (beaucoup plus rapide qu'un Dijkstra) et remonter jusqu'au sommet de départ en suivant les poids données par le Dijkstra de la partie 1.
260 microsecondes pour les 2 parties, la partie 2, utilisant les informations de la partie 1, ne prend que 5 microsecondes.
Je vais voir si je peux optimiser mon Dijkstra mais je ne vois pas trop comment faire pour l'instant.