私の挑戦は少し難しくて魅力的ではない傾向があります。簡単で楽しいものがあります。
アルクインの配列
アルクインのシーケンス A(n)は、三角形を数えることによって定義されます。A(n)は、整数の辺と周囲を持つ三角形の数ですn。このシーケンスは、ヨークのアルクインにちなんで呼ばれます。
このシーケンスの最初のいくつかの要素は、次のn = 0とおりです。
0, 0, 0, 1, 0, 1, 1, 2, 1, 3, 2, 4, 3, 5, 4, 7, 5, 8, 7, 10, 8, ...
例えばA(9) = 3、整数の辺と周囲を持つ唯一の三角形9は1 - 4 - 4で3 - 3 - 3あり、2 - 3 - 4。下に3つの有効な三角形があります。

このシーケンスには、非常に興味深いパターンがいくつかあります。例えばA(2*k) = A(2*k - 3)。
詳細については、OEISのA005044を参照してください。
チャレンジ
しかし、あなたの課題は、これらの数値のバイナリ表現についてです。各シーケンス番号をバイナリ表現に変換し、列ベクトルに入れて整列させると、非常に興味深いバイナリ画像が作成されます。
次の図では、シーケンス番号のバイナリ表現を見ることができますA(0), A(1), ..., A(149)。最初の列にはのバイナリ表現がありA(1)、2番目の列にはの表現がA(1)あります。

この写真では、ある種の繰り返しパターンを見ることができます。シーケンス番号のある画像を見ると、フラクタルのようにも見えますA(600), A(601), ..., A(899)。

あなたの仕事は、そのような画像を生成することです。関数、スクリプトは2つの整数を受け取り0 <= m < n、Alcuinのシーケンスのバイナリイメージを生成する必要がありますA(m), A(m+1), A(m+2), ..., A(n-2), A(n-1)。したがって、入力0, 150は最初の画像を生成し、入力600, 900は2番目の画像を生成します。
任意の一般的なグラフィック形式を使用できます。image.online-convert.comを使用してpngに変換できるすべての形式を考えてみましょう。または、画面に画像を表示することもできます。先行する白い行は許可されません!
これはコードゴルフです。したがって、最短のコード(バイト単位)が優先されます。
white=1 and black=0か、他の方法で回避?
white=0 and black=1。だから他の方法。A(0)白い列をA(9)=3生成し、下部に2つの黒いピクセルを持つ白い列を生成します。
0,0,0,1,0,2質問の冒頭のリストが述べている間、それは持っています0,0,0,1,0,1。



