Challenge de Programmation "Advent of Code" (https://adventofcode.com), édition 2018
Le code proposé est produit dans l'objectif de répondre le plus rapidement possible aux énoncés.
Il n'est ni esthéthique, ni optimisé, et ne contient généralement pas de contrôles de sécurité.
Une version retravaillée pourra éventuellement être proposée ultérieurement.
Pour chaque jour, un dossier intitulé "dayX_name_of_challenge" est créé. Il contient (généralement) 3 fichiers :
- input.txt : l'input personnel fourni par le site pour la réalisation du défi
- name_of_challenge.py : le code source permettant la résolution de la 1ère partie du défi
- name_of_challenge2.py : le code source permettant la résolution de la 2ème partie du défi
Pour permettre le débogage d'éventuelles modifications du code, les solutions attendues pour chaque défi sur la base de l'input fourni sont présentées dans le tableau ci-dessous :
Jour | Solution - Partie 1 | Solution - Partie 2 |
---|---|---|
1 | 442 | 59908 |
2 | 5904 | jiwamotgsfrudclzbyzkhlrvp |
3 | 118840 | 919 |
4 | 125444 | 18325 |
5 | 10598 | 5312 |
6 | 4284 | 35490 |
7 | IJLFUVDACEHGRZPNKQWSBTMXOY | 1072 |
8 | 40977 | 27490 |
9 | 399745 | 3349098263 |
10 | LRCXFXRP | 10630 |
11 | 235,16 | 236,227,14 |
12 | 1816 | 399999999957 |
13 | 64,57 | 136,8 |
14 | 3171123923 | 20353748 |
15 | 178003 | 48722 |
16 | 542 | 575 |
17 | 50838 | 43039 |
18 | 514944 | 193050 |
19 | 1488 | 17427456 |
20 | 3879 | 8464 |
21 | 2525738 | 11316540 |
22 | 7901 | 1087 |
23 | 430 | 80250793 |
24 | 15470 | 5742 |
25 | 367 | - |
- Optimisation du jour 17 en adoptant une approche récursive : sciyoshi https://www.reddit.com/r/adventofcode/comments/a6wpup/2018_day_17_solutions/ebyq6mj
- Optimisation du jour 23 à l'aide du solveur Z3 : mebeim https://www.reddit.com/r/adventofcode/comments/a8s17l/2018_day_23_solutions/ecdg47x/