this repo has no description
1module Main where
2
3import Lib
4import Data.List.Split (splitOn)
5
6main :: IO ()
7main = do
8 inputStr <- readFile "input.txt"
9 let input = splitOn "," $ init inputStr
10 moves = parseMoves input
11 oneLoop = loopsAt $ tail $ iterate (performDance moves) programStart
12 dancesLeft = rem 1000000000 (oneLoop + 1)
13 finalPositions = foldl (\c _ -> performDance moves c) programStart [1..dancesLeft]
14 in print finalPositions