1
3つのキーと3つのロックがあり、私は可能な試行を表示するコードを書く必要があります。ルールは次のとおりです。リストの理解の条件は、可能性を見つける
- 第2のキーは、最初のキーの前に置くことはできません。
- キーは複数回使用できません。
- 最初のキーを最初のキーとして配置することはできません。
- 3 - 2 - 1
- の順番に配置することはできません。ヒントとして、[(x、y、z)| X < - [1..3]、]
私は方法でこのコードを変更する代わりに、という "FST < - [3]" それは言います。 "fstは[1]にすることはできません" と私はまた、2の前に来ることができないことを付け加えたいと思っています。(elemIndex 2(x、y、z))>(elemIndex 1(x、y、z)) しかしそれはうまくいかなかった。私はいくつかのアイデアを感謝します。
d = [(x,y,z) | x <- [1..3], y <- [1..3], z <-[1..3], fst <- [3] , tail <- 1], x /= y, y /= z, x /= z]
ファーストを書くことができると主張することができ、あなたのブラケットが表示されません、Y/= 2]
を
を与えます一致する。第二に、変数 'fst'と' tail'の名前を意図的に指定しているのですか、あるいはこれらを関数として使うつもりでしたか?このコードで何をしようとしていますか?要件は何ですか? –
仕様が何であるかは私には分かりません。あなたが達成したいもの、達成したいものを最初に述べてください、第2の部分です。 –
私はそれらを関数として使いたいと思っていました。 - 私はその質問を編集しましたので、今はもっと明確になることを願っています – Pelin