あなたは知っている-彼らはこのように見える:
目標は、次のような音楽ビートのイラストを描くことです。
= = =
= = = = =
== = == = == = ====
== ==== == === = = =======
======== == ==== = ========= =
=================================
ルールは次のとおりです。
- 図の幅は33シンボルですが、必要に応じて、この幅を超える後続スペースは許可されます。
- 各列は等号(
=
)で構成されています。 - 各列にはランダムな高さがあり(次の列の高さは前の列の高さに決して依存してはいけません)、1から6まで変化します。厳密ではない入力が少なくとも可能であれば問題ありません数学の確率(つまり、一部の入力は他の入力よりもまれにしか表示されない可能性があります)。
- カラムは底部の上に浮いてはならず、隙間はありません。
- すべての列の最小の高さは1であるため、最後の行にも隙間はありません。常に33の等号で構成されます。
- 高さ6の列を持たない可能性があるため(結局すべてランダムです):この場合、スペースでできた一番上の行を持つ必要はありません。この性質のあらゆるエッジケースに適用されます。コードが突然1を超える高さの列を提供しなかった場合、一番下の行の上にスペースで作られた追加の行を持つ必要はありません。
- あなたは何も入力しません。
= = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =
)
Math.random()
、線形合同ジェネレーターのパラメーターがわかっている場合、前の呼び出しからのような関数を直接計算できます。つまり、この基準を満たすために、ほとんどの組み込みランダム機能を変更する必要があります。私はこれがより良い表現であることを提案します。