これは、APL CodeGolf のオータムトーナメントのホール9 です。私はそこで問題の原作者なので、ここに再投稿することができます。
(1つ以上の次元の)単純な(長方形で、ギザギザのない)ブール配列を指定すると、最初の配列が入力と同一で、最後がすべて真であるような形の配列のリストを返します。すべての中間ステップには、左側の隣接ステップよりも1つ多くの真理がなければなりません(ただし、それ以外は同じです)。ステップごとに、変更されるビットを疑似ランダムに選択する必要があります(必要に応じてシードを選択できます)。
例
[0]
与える [[0],[1]]
[[0]]
与える [[[0]],[[1]]]
[[[1,1,1],[1,1,1],[1,1,1]],[[1,1,1],[1,1,1],[1,1,1]],[[1,1,1],[1,1,1],[1,1,1]]]
与える [[[[1,1,1],[1,1,1],[1,1,1]],[[1,1,1],[1,1,1],[1,1,1]],[[1,1,1],[1,1,1],[1,1,1]]]]
以下の例の結果は、もちろんランダム性により異なる場合があります。これらは有効な出力の例にすぎません。
[0,1,0,0]
与える [[0,1,0,0],[1,1,0,0],[1,1,0,1],[1,1,1,1]]
[[0,1,0],[0,0,1]]
与える [[[0,1,0],[0,0,1]],[[1,1,0],[0,0,1]],[[1,1,0],[0,1,1]],[[1,1,1],[0,1,1]],[[1,1,1],[1,1,1]]]
[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]]
与える [[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,1,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]],[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,1,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,1,0,0,0,0]],[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,1,0,0,0],[0,0,0,0,0,0,1,0],[0,0,0,0,0,0,0,0],[0,0,0,1,0,0,0,0]],[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,1,0,0,0],[0,0,0,0,0,0,1,0],[1,0,0,0,0,0,0,0],[0,0,0,1,0,0,0,0]],[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,1,0,0,0],[0,0,0,0,0,0,1,0],[1,0,1,0,0,0,0,0],[0,0,0,1,0,0,0,0]],[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,1,0,0,0],[0,0,0,0,0,0,1,0],[1,1,1,0,0,0,0,0],[0,0,0,1,0,0,0,0]],[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,1,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,1,0,0,0],[0,0,0,0,0,0,1,0],[1,1,1,0,0,0,0,0],[0,0,0,1,0,0,0,0]],[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,1,0,0],[0,0,0,0,1,0,0,0],[0,0,0,0,1,0,0,0],[0,0,0,0,0,0,1,0],[1,1,1,0,0,0,0,0],[0,0,0,1,0,0,0,0]],[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,1,0,0],[0,0,0,0,1,0,0,0],[0,0,0,0,1,0,0,0],[0,1,0,0,0,0,1,0],[1,1,1,0,0,0,0,0],[0,0,0,1,0,0,0,0]],[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,1,0,0],[0,0,0,0,1,0,0,0],[0,0,0,0,1,0,1,0],[0,1,0,0,0,0,1,0],[1,1,1,0,0,0,0,0],[0,0,0,1,0,0,0,0]],[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,1,1,0],[0,0,0,0,1,0,0,0],[0,0,0,0,1,0,1,0],[0,1,0,0,0,0,1,0],[1,1,1,0,0,0,0,0],[0,0,0,1,0,0,0,0]],[[1,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,1,1,0],[0,0,0,0,1,0,0,0],[0,0,0,0,1,0,1,0],[0,1,0,0,0,0,1,0],[1,1,1,0,0,0,0,0],[0,0,0,1,0,0,0,0]],[[1,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,1,1,0],[0,0,0,0,1,0,0,0],[0,0,0,0,1,0,1,0],[0,1,0,0,1,0,1,0],[1,1,1,0,0,0,0,0],[0,0,0,1,0,0,0,0]],[[1,0,1,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,1,1,0],[0,0,0,0,1,0,0,0],[0,0,0,0,1,0,1,0],[0,1,0,0,1,0,1,0],[1,1,1,0,0,0,0,0],[0,0,0,1,0,0,0,0]],[[1,0,1,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,1,1,0],[0,0,0,0,1,0,0,0],[1,0,0,0,1,0,1,0],[0,1,0,0,1,0,1,0],[1,1,1,0,0,0,0,0],[0,0,0,1,0,0,0,0]],[[1,0,1,0,0,0,0,0],[0,0,0,0,0,0,1,0],[0,0,0,0,0,1,1,0],[0,0,0,0,1,0,0,0],[1,0,0,0,1,0,1,0],[0,1,0,0,1,0,1,0],[1,1,1,0,0,0,0,0],[0,0,0,1,0,0,0,0]],[[1,0,1,0,0,0,0,0],[0,0,0,0,0,0,1,0],[0,0,0,0,0,1,1,0],[0,0,0,0,1,0,0,0],[1,0,0,0,1,0,1,0],[0,1,0,0,1,0,1,0],[1,1,1,0,0,0,0,1],[0,0,0,1,0,0,0,0]],[[1,0,1,0,0,0,0,0],[0,0,0,0,1,0,1,0],[0,0,0,0,0,1,1,0],[0,0,0,0,1,0,0,0],[1,0,0,0,1,0,1,0],[0,1,0,0,1,0,1,0],[1,1,1,0,0,0,0,1],[0,0,0,1,0,0,0,0]],[[1,0,1,0,0,0,0,0],[0,0,0,0,1,0,1,0],[0,0,0,0,0,1,1,0],[0,0,0,0,1,0,0,0],[1,0,0,0,1,0,1,0],[0,1,0,0,1,0,1,1],[1,1,1,0,0,0,0,1],[0,0,0,1,0,0,0,0]],[[1,0,1,0,0,0,0,0],[0,0,0,1,1,0,1,0],[0,0,0,0,0,1,1,0],[0,0,0,0,1,0,0,0],[1,0,0,0,1,0,1,0],[0,1,0,0,1,0,1,1],[1,1,1,0,0,0,0,1],[0,0,0,1,0,0,0,0]],[[1,0,1,0,0,0,0,0],[0,0,1,1,1,0,1,0],[0,0,0,0,0,1,1,0],[0,0,0,0,1,0,0,0],[1,0,0,0,1,0,1,0],[0,1,0,0,1,0,1,1],[1,1,1,0,0,0,0,1],[0,0,0,1,0,0,0,0]],[[1,0,1,0,0,0,0,0],[0,0,1,1,1,0,1,0],[0,0,0,0,0,1,1,0],[0,0,0,0,1,0,0,0],[1,0,0,0,1,0,1,0],[0,1,0,0,1,0,1,1],[1,1,1,0,0,0,0,1],[0,1,0,1,0,0,0,0]],[[1,0,1,0,0,0,0,0],[0,0,1,1,1,0,1,0],[0,0,0,0,0,1,1,0],[0,0,0,0,1,0,0,1],[1,0,0,0,1,0,1,0],[0,1,0,0,1,0,1,1],[1,1,1,0,0,0,0,1],[0,1,0,1,0,0,0,0]],[[1,0,1,0,0,0,0,0],[0,0,1,1,1,0,1,0],[0,0,0,0,0,1,1,0],[0,0,0,0,1,0,0,1],[1,0,0,0,1,0,1,0],[0,1,0,0,1,0,1,1],[1,1,1,0,1,0,0,1],[0,1,0,1,0,0,0,0]],[[1,0,1,0,0,0,0,0],[0,0,1,1,1,0,1,0],[0,0,0,0,1,1,1,0],[0,0,0,0,1,0,0,1],[1,0,0,0,1,0,1,0],[0,1,0,0,1,0,1,1],[1,1,1,0,1,0,0,1],[0,1,0,1,0,0,0,0]],[[1,0,1,0,0,0,0,0],[0,0,1,1,1,0,1,0],[0,0,0,0,1,1,1,1],[0,0,0,0,1,0,0,1],[1,0,0,0,1,0,1,0],[0,1,0,0,1,0,1,1],[1,1,1,0,1,0,0,1],[0,1,0,1,0,0,0,0]],[[1,0,1,0,0,0,0,0],[0,0,1,1,1,0,1,0],[0,0,0,0,1,1,1,1],[0,0,0,0,1,0,0,1],[1,0,0,0,1,0,1,0],[0,1,0,0,1,0,1,1],[1,1,1,0,1,0,1,1],[0,1,0,1,0,0,0,0]],[[1,0,1,1,0,0,0,0],[0,0,1,1,1,0,1,0],[0,0,0,0,1,1,1,1],[0,0,0,0,1,0,0,1],[1,0,0,0,1,0,1,0],[0,1,0,0,1,0,1,1],[1,1,1,0,1,0,1,1],[0,1,0,1,0,0,0,0]],[[1,0,1,1,0,0,0,0],[0,0,1,1,1,0,1,0],[0,0,0,0,1,1,1,1],[0,0,1,0,1,0,0,1],[1,0,0,0,1,0,1,0],[0,1,0,0,1,0,1,1],[1,1,1,0,1,0,1,1],[0,1,0,1,0,0,0,0]],[[1,0,1,1,0,0,0,0],[0,0,1,1,1,0,1,0],[0,0,0,0,1,1,1,1],[0,0,1,0,1,0,0,1],[1,0,0,0,1,0,1,0],[0,1,0,0,1,0,1,1],[1,1,1,0,1,1,1,1],[0,1,0,1,0,0,0,0]],[[1,0,1,1,0,0,0,0],[0,0,1,1,1,0,1,0],[0,0,0,0,1,1,1,1],[0,0,1,0,1,0,0,1],[1,1,0,0,1,0,1,0],[0,1,0,0,1,0,1,1],[1,1,1,0,1,1,1,1],[0,1,0,1,0,0,0,0]],[[1,0,1,1,0,1,0,0],[0,0,1,1,1,0,1,0],[0,0,0,0,1,1,1,1],[0,0,1,0,1,0,0,1],[1,1,0,0,1,0,1,0],[0,1,0,0,1,0,1,1],[1,1,1,0,1,1,1,1],[0,1,0,1,0,0,0,0]],[[1,0,1,1,0,1,0,0],[0,1,1,1,1,0,1,0],[0,0,0,0,1,1,1,1],[0,0,1,0,1,0,0,1],[1,1,0,0,1,0,1,0],[0,1,0,0,1,0,1,1],[1,1,1,0,1,1,1,1],[0,1,0,1,0,0,0,0]],[[1,0,1,1,0,1,0,0],[0,1,1,1,1,0,1,0],[0,0,0,0,1,1,1,1],[0,0,1,0,1,0,0,1],[1,1,0,0,1,0,1,0],[0,1,0,0,1,0,1,1],[1,1,1,0,1,1,1,1],[0,1,0,1,0,0,0,1]],[[1,0,1,1,0,1,0,0],[0,1,1,1,1,0,1,1],[0,0,0,0,1,1,1,1],[0,0,1,0,1,0,0,1],[1,1,0,0,1,0,1,0],[0,1,0,0,1,0,1,1],[1,1,1,0,1,1,1,1],[0,1,0,1,0,0,0,1]],[[1,0,1,1,0,1,0,0],[0,1,1,1,1,0,1,1],[0,0,0,0,1,1,1,1],[0,0,1,0,1,0,0,1],[1,1,0,0,1,0,1,0],[0,1,1,0,1,0,1,1],[1,1,1,0,1,1,1,1],[0,1,0,1,0,0,0,1]],[[1,0,1,1,0,1,0,0],[0,1,1,1,1,0,1,1],[0,0,0,0,1,1,1,1],[0,0,1,0,1,0,0,1],[1,1,0,0,1,0,1,0],[0,1,1,0,1,0,1,1],[1,1,1,0,1,1,1,1],[0,1,0,1,1,0,0,1]],[[1,0,1,1,0,1,0,0],[0,1,1,1,1,0,1,1],[0,0,0,0,1,1,1,1],[0,0,1,0,1,0,0,1],[1,1,0,0,1,0,1,0],[1,1,1,0,1,0,1,1],[1,1,1,0,1,1,1,1],[0,1,0,1,1,0,0,1]],[[1,1,1,1,0,1,0,0],[0,1,1,1,1,0,1,1],[0,0,0,0,1,1,1,1],[0,0,1,0,1,0,0,1],[1,1,0,0,1,0,1,0],[1,1,1,0,1,0,1,1],[1,1,1,0,1,1,1,1],[0,1,0,1,1,0,0,1]],[[1,1,1,1,0,1,1,0],[0,1,1,1,1,0,1,1],[0,0,0,0,1,1,1,1],[0,0,1,0,1,0,0,1],[1,1,0,0,1,0,1,0],[1,1,1,0,1,0,1,1],[1,1,1,0,1,1,1,1],[0,1,0,1,1,0,0,1]],[[1,1,1,1,0,1,1,0],[0,1,1,1,1,0,1,1],[0,0,0,0,1,1,1,1],[0,0,1,0,1,0,0,1],[1,1,0,0,1,0,1,0],[1,1,1,0,1,0,1,1],[1,1,1,0,1,1,1,1],[0,1,1,1,1,0,0,1]],[[1,1,1,1,0,1,1,0],[0,1,1,1,1,0,1,1],[0,1,0,0,1,1,1,1],[0,0,1,0,1,0,0,1],[1,1,0,0,1,0,1,0],[1,1,1,0,1,0,1,1],[1,1,1,0,1,1,1,1],[0,1,1,1,1,0,0,1]],[[1,1,1,1,0,1,1,0],[0,1,1,1,1,0,1,1],[1,1,0,0,1,1,1,1],[0,0,1,0,1,0,0,1],[1,1,0,0,1,0,1,0],[1,1,1,0,1,0,1,1],[1,1,1,0,1,1,1,1],[0,1,1,1,1,0,0,1]],[[1,1,1,1,0,1,1,0],[0,1,1,1,1,0,1,1],[1,1,0,0,1,1,1,1],[0,0,1,0,1,0,0,1],[1,1,0,0,1,0,1,1],[1,1,1,0,1,0,1,1],[1,1,1,0,1,1,1,1],[0,1,1,1,1,0,0,1]],[[1,1,1,1,0,1,1,0],[0,1,1,1,1,0,1,1],[1,1,0,0,1,1,1,1],[0,1,1,0,1,0,0,1],[1,1,0,0,1,0,1,1],[1,1,1,0,1,0,1,1],[1,1,1,0,1,1,1,1],[0,1,1,1,1,0,0,1]],[[1,1,1,1,0,1,1,0],[0,1,1,1,1,0,1,1],[1,1,0,0,1,1,1,1],[0,1,1,0,1,0,0,1],[1,1,0,0,1,1,1,1],[1,1,1,0,1,0,1,1],[1,1,1,0,1,1,1,1],[0,1,1,1,1,0,0,1]],[[1,1,1,1,1,1,1,0],[0,1,1,1,1,0,1,1],[1,1,0,0,1,1,1,1],[0,1,1,0,1,0,0,1],[1,1,0,0,1,1,1,1],[1,1,1,0,1,0,1,1],[1,1,1,0,1,1,1,1],[0,1,1,1,1,0,0,1]],[[1,1,1,1,1,1,1,0],[0,1,1,1,1,0,1,1],[1,1,1,0,1,1,1,1],[0,1,1,0,1,0,0,1],[1,1,0,0,1,1,1,1],[1,1,1,0,1,0,1,1],[1,1,1,0,1,1,1,1],[0,1,1,1,1,0,0,1]],[[1,1,1,1,1,1,1,0],[0,1,1,1,1,0,1,1],[1,1,1,0,1,1,1,1],[0,1,1,0,1,0,0,1],[1,1,0,0,1,1,1,1],[1,1,1,0,1,0,1,1],[1,1,1,0,1,1,1,1],[0,1,1,1,1,0,1,1]],[[1,1,1,1,1,1,1,0],[0,1,1,1,1,0,1,1],[1,1,1,0,1,1,1,1],[0,1,1,1,1,0,0,1],[1,1,0,0,1,1,1,1],[1,1,1,0,1,0,1,1],[1,1,1,0,1,1,1,1],[0,1,1,1,1,0,1,1]],[[1,1,1,1,1,1,1,0],[0,1,1,1,1,1,1,1],[1,1,1,0,1,1,1,1],[0,1,1,1,1,0,0,1],[1,1,0,0,1,1,1,1],[1,1,1,0,1,0,1,1],[1,1,1,0,1,1,1,1],[0,1,1,1,1,0,1,1]],[[1,1,1,1,1,1,1,1],[0,1,1,1,1,1,1,1],[1,1,1,0,1,1,1,1],[0,1,1,1,1,0,0,1],[1,1,0,0,1,1,1,1],[1,1,1,0,1,0,1,1],[1,1,1,0,1,1,1,1],[0,1,1,1,1,0,1,1]],[[1,1,1,1,1,1,1,1],[0,1,1,1,1,1,1,1],[1,1,1,0,1,1,1,1],[0,1,1,1,1,0,0,1],[1,1,0,0,1,1,1,1],[1,1,1,0,1,1,1,1],[1,1,1,0,1,1,1,1],[0,1,1,1,1,0,1,1]],[[1,1,1,1,1,1,1,1],[0,1,1,1,1,1,1,1],[1,1,1,0,1,1,1,1],[0,1,1,1,1,0,0,1],[1,1,0,1,1,1,1,1],[1,1,1,0,1,1,1,1],[1,1,1,0,1,1,1,1],[0,1,1,1,1,0,1,1]],[[1,1,1,1,1,1,1,1],[0,1,1,1,1,1,1,1],[1,1,1,0,1,1,1,1],[0,1,1,1,1,0,1,1],[1,1,0,1,1,1,1,1],[1,1,1,0,1,1,1,1],[1,1,1,0,1,1,1,1],[0,1,1,1,1,0,1,1]],[[1,1,1,1,1,1,1,1],[0,1,1,1,1,1,1,1],[1,1,1,0,1,1,1,1],[0,1,1,1,1,0,1,1],[1,1,0,1,1,1,1,1],[1,1,1,0,1,1,1,1],[1,1,1,0,1,1,1,1],[0,1,1,1,1,1,1,1]],[[1,1,1,1,1,1,1,1],[0,1,1,1,1,1,1,1],[1,1,1,0,1,1,1,1],[1,1,1,1,1,0,1,1],[1,1,0,1,1,1,1,1],[1,1,1,0,1,1,1,1],[1,1,1,0,1,1,1,1],[0,1,1,1,1,1,1,1]],[[1,1,1,1,1,1,1,1],[0,1,1,1,1,1,1,1],[1,1,1,0,1,1,1,1],[1,1,1,1,1,0,1,1],[1,1,0,1,1,1,1,1],[1,1,1,0,1,1,1,1],[1,1,1,1,1,1,1,1],[0,1,1,1,1,1,1,1]],[[1,1,1,1,1,1,1,1],[0,1,1,1,1,1,1,1],[1,1,1,0,1,1,1,1],[1,1,1,1,1,0,1,1],[1,1,1,1,1,1,1,1],[1,1,1,0,1,1,1,1],[1,1,1,1,1,1,1,1],[0,1,1,1,1,1,1,1]],[[1,1,1,1,1,1,1,1],[0,1,1,1,1,1,1,1],[1,1,1,0,1,1,1,1],[1,1,1,1,1,0,1,1],[1,1,1,1,1,1,1,1],[1,1,1,0,1,1,1,1],[1,1,1,1,1,1,1,1],[1,1,1,1,1,1,1,1]],[[1,1,1,1,1,1,1,1],[0,1,1,1,1,1,1,1],[1,1,1,0,1,1,1,1],[1,1,1,1,1,1,1,1],[1,1,1,1,1,1,1,1],[1,1,1,0,1,1,1,1],[1,1,1,1,1,1,1,1],[1,1,1,1,1,1,1,1]],[[1,1,1,1,1,1,1,1],[0,1,1,1,1,1,1,1],[1,1,1,1,1,1,1,1],[1,1,1,1,1,1,1,1],[1,1,1,1,1,1,1,1],[1,1,1,0,1,1,1,1],[1,1,1,1,1,1,1,1],[1,1,1,1,1,1,1,1]],[[1,1,1,1,1,1,1,1],[0,1,1,1,1,1,1,1],[1,1,1,1,1,1,1,1],[1,1,1,1,1,1,1,1],[1,1,1,1,1,1,1,1],[1,1,1,1,1,1,1,1],[1,1,1,1,1,1,1,1],[1,1,1,1,1,1,1,1]],[[1,1,1,1,1,1,1,1],[1,1,1,1,1,1,1,1],[1,1,1,1,1,1,1,1],[1,1,1,1,1,1,1,1],[1,1,1,1,1,1,1,1],[1,1,1,1,1,1,1,1],[1,1,1,1,1,1,1,1],[1,1,1,1,1,1,1,1]]]