これがここでの私の最初の質問ですので、コメントの提案は大歓迎です!ありがとう;)
前書き
以下のための1つの非常に一般的な戦略2048のゲームはありません下にスワイプ今までにありません。これにより、すべての大きな数字が上部に、下部の数字が下部に配置されます。したがって、この戦略を正しく適用すると、ボードは常に次のパターンに一致します。
チェックするパターン/あなたのタスク
提出は、完全なプログラムか、ボードが次のように記述できる場合に真実の値を返す関数のいずれかである必要があります。最初の数字以下など。適切な2048ボードは、一番上の数字が一番上にあるボードとして定義されます。これはcode-golfであるため、言語ごとの最短コード(バイト単位)が優先されます。
I / O
入力は、それぞれが4つの数字を含む4つの配列の配列、または16の数字の配列など、任意の適切な方法で取得できます。合計で、4x4ボードを表す合計16の数値に なります。出力は入力の真の値である必要があり、それ以外の場合は偽の値です。
例
真実:
|-------------------|
| 16 | | 64 | 8 |
|-------------------|
| 8 | | 32 | 8 |
|-------------------|
| 4 | | 32 | 2 |
|-------------------|
| 2 | | | |
|-------------------|
|-------------------|
| 16 | 128| 64 | 32 |
|-------------------|
| 8 | 128| 32 | 8 |
|-------------------|
| 4 | 16 | 8 | 2 |
|-------------------|
| 4 | | | |
|-------------------|
偽物:
|-------------------|
| 16 | | 64 | 8 |
|-------------------|
| 8 | | 32 | 16 |
|-------------------|
| 32 | | 128| 2 |
|-------------------|
| 2 | | | |
|-------------------|
|-------------------|
| 16 | 128| 64 | 32 |
|-------------------|
| 8 | 32| | 8 |
|-------------------|
| 4 | 16 | 8 | 2 |
|-------------------|
| 4 | | | |
|-------------------|
注意
2番目の偽のテストケースを見てください:どこかに空の値(または0)があり、最後にゼロ以外の数値よりも大きい値が続いている場合でも、次の値は偽である必要があります。ゼロは0自体よりも大きいため、無効になります。
がんばろう!