• [^] # Re: Solution en Haskell

    Posté par . En réponse au message Advent of Code, jour 14. Évalué à 1. Dernière modification le 15 décembre 2023 à 17:25.

    J'ai réécrit ma fonction tilt de manière plus maligne en m'inspirant de la solution d'une autre personne.

    tilt :: Grid -> Grid
    tilt = map (go 0) where
     go n = \case
     (Empty:xs) -> go (n+1) xs
     (Round:xs) -> Round : go n xs
     (Cube:xs) -> replicate n Empty ++ Cube : go 0 xs
     _ -> replicate n Empty

    Maintenant, le temps d'exécution est passé à 200ms.