import Data.Char (digitToInt) solve n xs = sum $ zipWith (\a b -> if a == b then a else 0) xs (drop n $ cycle xs) solve1 xs = solve 1 (digitToInt <$> xs) solve2 xs = solve ((length xs) `div` 2) (digitToInt <$> xs)