私はこれに30分以上苦労しています。私はそれが単純なことだと知っていますが、私は Haskell の型が苦手で、私と非常によく似た問題に対する受け入れられた回答を読んだ後でさえ、私はまだ自分の問題を解決できません - ましてやそれを理解することはできません!
コード:
p108 = [filter (\[a,b] -> a>0 && b>0) (diophantinepairs n) | n <- [1..]]
diophantinepairs :: Integer -> [[Integer]]
diophantinepairs n = nub$map sort b
where
a = divisors n
b = [[(n-d), n - (n^2)/d] | d <- a]
エラー :
249:39: No instance for (Fractional Integer) arising from a use of `/' Possible fix: add an instance declaration for (Fractional Integer) In the second argument of `(-)', namely `(n ^ 2) / d' In the expression: n - (n ^ 2) / d In the expression: [(n - d), n - (n ^ 2) / d]
ありがとう、サム。