問題文:
すべての辺が整数で、すべての辺が10以下で、周囲長が24である直角三角形を見つけます。
次の2つの解決策のうち、問題を正しく解釈し、正しい答えを与えるのはどれですか?
最初の解決策が正しくない場合、同様のシナリオでそのようなプログラミングエラーを回避するにはどうすればよいですか?
最初の解決策:
ghci> let rightTriangles = [(a, b, c) | a <- [1..10], b <- [1..10], c <- [1..10], a^2 + b^2 == c^2, a+b+c == 24]
ghci> rightTriangles
[(6,8,10),(8,6,10)]
2番目の解決策:
ghci> let rightTriangles' = [ (a,b,c) | c <- [1..10] , b <- [1..c] , a <- [1..b] , a^2 + b^2 == c^2, a+b+c == 24]
ghci> rightTriangles'
[(6,8,10)]