Хабр Курсы для всех
РЕКЛАМА
Практикум, Хекслет, SkyPro, авторские курсы — собрали всех и попросили скидки. Осталось выбрать!
let n1 : n2 : [] = map read $ words numsStr
А конец итерации лучше заменить на: printNSolutions 0 = return ()
let n1 : n2 : [] = ... можно заматчить и так: let [n1, n2] = ...main = putStr.unlines.map(show.solve.map read.words).tail.lines=<<getContents
where { solve (0:_) = 0; solve (_:0:_) = 0; solve (a:b:_) = if a >= b then (div a b) + solve [b,(mod a b)] else solve [b,a]; }
Решение турнирных задач на языке Haskell