この課題では、リストを入力として受け取り、そのリストの順列を返す関数(関数は完全なプログラムである場合があります)を作成します。関数は次の要件に従う必要があります。
それは決定論的でなければなりません。
関数自体を可変回数で構成すると、任意の順列のリストを取得できるはずです。
これはコードゴルフの質問なので、回答はバイト単位でスコアリングされ、バイト数が少ないほど優れています。
さらなるルール
あなたは、リストの任意のタイプ、(かかる場合があります
[Integer]、[String]、[[Integer]]それ限り)を- 空でないことができます
- 少なくとも16の可能な値を持つ個別のオブジェクトを含めることができます。(Haskellは使用できず
[()]、関数はであると主張できませんid) - 重複オブジェクトを含めることができます(セットなし)
プログラムや関数を書くことはできますが、標準入出力に準拠する必要があります。
next_permutation関数を要求します。

S_n、循環しているのはn<3