6要素リスト[x1、x2、x3、x4、x5、x6]のすべての可能な組み合わせを生成したい0と20を返します。6要素リストのすべての組み合わせを生成し、各組み合わせに関数を適用する
このようなリストのすべての可能な組み合わせを生成し、各リストに関数を適用して(入力としてリストを取り込み、魔法のIntを出力する)、その結果をタプルのリストに出力します。すぐそこにあまりにも多くの組み合わせであり、手で行うことは事実上不可能であることに気づいたことで、私は手でこれにしようとした
[([x11,x21,x31,x41,x51,x61],Int1), ([x12,x22,x32,x42,x52,x62],Int2), ...]
ようなので、タプルのリストが見えます。
組み合わせは、[0,0,0,0,0,0]、[1,7,0,10,11,6]、[7,7,7,7,6,6]、 [20,20,20,20,20,20]など。
(私は前にこれを尋ねたので)私は、リストのすべての組み合わせを生成し、リストのリストにそれらを配置する方法を知っている
foo [] = [[]]
foo (x:xs) = foo xs ++ map (x:) (foo xs)
私はこの時間を達成したい私は何をしようとしておりませんので、異なっています特定のリスト内でさまざまな組み合わせを生成するために、私は6つの要素リストをすべて生成しようとしています。
ここ
64000000(20^6)しかありません。どのように「あまりにも多く」ですか?実際の問題に対してもっと賢明なアプローチをとるべきでしょう。これらの魔法のintは何ですか、あなたはそれらで何をしていますか、なぜそれほど多くのものが必要ですか? – Bergi
[List Comprehensions](https://wiki.haskell.org/List_comprehension)のHaskell wikiページの例が参考になると思います。 – ErikR
@Bergiあなたが実際に周囲の文脈を読んでいれば、手で*処理するにはあまりにも多くのことです。 – immibis