Retourner au contenu associé (journal : Advent of Code 2025)
Posté par steph1978 le 05 décembre 2025 à 20:54. En réponse au journal Advent of Code 2025. Évalué à 4. Dernière modification le 05 décembre 2025 à 20:56.
Et en 4 lignes en utilisant reduce:
reduce
I,J = open(0).read().strip().split("\n\n") t, *R = sorted(tuple(map(int,i.split("-"))) for i in I.split("\n")) print(sum(any(a <= int(i) <= b for (a,b) in [t]+R) for i in J.split("\n"))) print(__import__("functools").reduce(lambda a, r: a if r[1] <= a[1] else (a[0] + (r[1]-r[0]+1 if r[0]>a[1] else r[1]-a[1]), r[1]), R, (t[1]-t[0]+1,t[1]))[0])
Pour comprendre, l'accumulateur est, à tout moment de la réduction, un tuple[la somme accumulé, le max atteint].
AltStyle によって変換されたページ (->オリジナル) / アドレス: モード: デフォルト 音声ブラウザ ルビ付き 配色反転 文字拡大 モバイル
[^] # Re: jour 5
Posté par steph1978 . En réponse au journal Advent of Code 2025. Évalué à 4. Dernière modification le 05 décembre 2025 à 20:56.
Et en 4 lignes en utilisant
reduce:Pour comprendre, l'accumulateur est, à tout moment de la réduction, un tuple[la somme accumulé, le max atteint].