Posté par gaaaaaAab .
En réponse au journal Advent of Code 2025.
Évalué à 2.
Dernière modification le 03 décembre 2025 à 09:12.
j'optimise pour le temps que j'y passe, ça fait pas du code très performant :) Pour le jour 2, mon code calcul la partie 2 en un peu moins de 4 secondes (en même temps, c'est du python).
Pour la partie 1, c'est la même idée que steph1978, cad comparer les deux moitiés des nombres dont la représentation en caractères est de longueur pair.
pour la partie 2, je tronçonne la représentation en sous-chaînes de longueur i pour toutes les longueurs i pertinentes (i variant de 1 à la moitié de la longueur de la représentation, et seulement si la longueur est divisible par i), et j'ajoute les tronçons de chaînes dans un set. En Python, un set ne pouvant contenir qu'une seul occurrence de chaque valeur, chaque fois qu'un tronçon déjà présent est ajouté, le set ne bouge pas. Si le set est de taille 1 à la fin de l'opération, tous les tronçons étaient identiques, on a trouvé un nombre invalide.
[^] # Re: Jour 2
Posté par gaaaaaAab . En réponse au journal Advent of Code 2025. Évalué à 2. Dernière modification le 03 décembre 2025 à 09:12.
j'optimise pour le temps que j'y passe, ça fait pas du code très performant :) Pour le jour 2, mon code calcul la partie 2 en un peu moins de 4 secondes (en même temps, c'est du python).
Pour la partie 1, c'est la même idée que steph1978, cad comparer les deux moitiés des nombres dont la représentation en caractères est de longueur pair.
pour la partie 2, je tronçonne la représentation en sous-chaînes de longueur i pour toutes les longueurs i pertinentes (i variant de 1 à la moitié de la longueur de la représentation, et seulement si la longueur est divisible par i), et j'ajoute les tronçons de chaînes dans un set. En Python, un set ne pouvant contenir qu'une seul occurrence de chaque valeur, chaque fois qu'un tronçon déjà présent est ajouté, le set ne bouge pas. Si le set est de taille 1 à la fin de l'opération, tous les tronçons étaient identiques, on a trouvé un nombre invalide.