チャレンジ
既定のI / O形式の2つの文字列を指定して、次の操作を行います。
注:チャレンジでは、最初の文字列を「データ」、2番目の文字列を「プログラム」と呼びます。
- プログラムを無限の文字列に変更します。無限の文字列は、プログラムが無限に繰り返されるだけです(例
10
---1010101010...
)。チャレンジではこれを「無限プログラム」と呼びます データが空ではない間、無限プログラムをループしながら次の操作を実行します。
a。現在のコマンドが「0」の場合、データの左端のビットを削除します。データが空の場合、「0」は何もしません。
b。現在のコマンドが「1」の場合、データの左端のビットが1であれば、プログラムの次の文字をデータに追加します。
c。データが空でない場合、データを出力します。
テストケース
データは入力の左側であり、プログラムは右側です。
100, 0 --> 00, 0
1111, 1 --> 11111, 111111, 1111111, ...
10, 011 --> 0, 0, 0
1110, 011 --> 110, 1101, 11010, 1010...
ノート
- データとプログラムは0と1のみで構成されます
- 停止しないデータ/プログラムの場合、プログラムを停止する必要はありません。
- データとプログラムは入力では空になりません。
- 複数の末尾および先頭の改行がある場合があります
- 標準的な抜け穴は禁止されています
- 任意の便利なI / O形式を使用できます
code-golfと同様に、最短のコードが勝ちます!
100
は、「データの左端のビットを削除する」という定義の10
cmd に進み0
ます。の左端のビットでは100
ない1
でしょうか?