Files
advent-of-code-2023/day01/Part1.hs
2023-12-01 17:25:07 +01:00

15 lines
559 B
Haskell

module Part1 where
import Commons
getCalibrationValuePart :: CalibrationLine -> Char
getCalibrationValuePart (h: _) | h >= '0' && h <= '9' = h
getCalibrationValuePart (_: t) = getCalibrationValuePart t
getCalibrationValue :: CalibrationLine -> Integer
getCalibrationValue line = read [(getCalibrationValuePart line), (getCalibrationValuePart (reverse line))]
getCalibrationValues :: CalibrationDocument -> [Integer]
getCalibrationValues (h: []) = [(getCalibrationValue h)]
getCalibrationValues (h: t) = ((getCalibrationValue h): (getCalibrationValues t))