euler 48 solution haskell