main :: IO () main = interact $ unlines . map show . solve . map (read :: String -> Int) . words solve :: [Int] -> [Int] solve (n:h:m:t:_) = [if (m + sleepMinutes) > 60 then (h + sleepHours) `mod` 24 + 1 else (h + sleepHours) `mod` 24] ++ [(m + sleepMinutes) `mod` 60] where (sleepHours , sleepMinutes) = divMod ((n - 1) * t) 60