一連の4つのノートを演奏できるクランク式オルゴールがあります。クランクを回すと、クランクの位置と回転の方向に応じて、4つの弦のうちの1つが弾かれます。クランクを真北に向けると、ボックス(ストリングは1から4までの番号が付けられています)は次のようになります。
1 | 2
|
O
4 3
そこから、クランクを時計回りに回して#2弦を摘み、クランクを東に向けることができます。
1 2
O---
4 3
または、クランクを北から反時計回りに回して#1弦を演奏し、クランクが西を指すようにすることもできます。
1 2
---O
4 3
いつでも、ボックスは次の2つの音符のいずれかを再生できます。次の音符は時計回りに使用でき、次の音符は反時計回りに使用できます。
チャレンジ
あなたの課題は、音符の値(すなわち、数字の非空の文字列受け入れプログラムまたは機能書くことで1
スルー4
)し、オルゴールのノートのシーケンスを再生するには、これまで可能であるかどうかを判断します。入力の再生可能性または再生不可能性を示すために、真実または偽の結果を生成します。
いくつかのメモ:
入力では、最初の開始位置については想定されていません。入力
214
(東から開始して厳密に反時計回りに移動)および234
(北から開始して厳密に時計回りに移動)および両方が有効です。クランクは各音の後にどちらの方向にも自由に移動できます。
33333
1つの文字列を前後に移動することにより、同じ音符の連続が可能です(例:)。シリーズ1221441
は完全にプレイ可能です(西から始まり、時計回りに2ステップ、次に反時計回りに3ステップ、時計回りに2ステップ移動します)。
サンプル
いくつかのtrue
ケース:
1
1234
1221
3333
143332
22234
2234
22214
1221441
41233
いくつかのfalse
ケース:
13 (note 3 is never available after note 1)
1224 (after `122`, the crank must be north, so 4 is not playable)
121 (after `12` the crank is east; 1 is not playable)
12221 (as above, after `1222` the crank is east)
43221