days = [31,28,31,30,31,30,31,31,30,31,30,31] i2d 0 = [] i2d n = mod n 10 : i2d (div n 10) countMonth m d = length [ () | i <- [1..d], m == sum (i2d i) ] result = sum $ zipWith countMonth [1..12] days main = print result