B52 - Ball Simulation 解説

実行時間制限: 2 sec / メモリ制限: 1024 MB

配点: 10001000

問題文

NN 個のボールが一列に並べられています。これらのボールの最初の色は文字列 AA で与えられます。

ボール ii の色は AAii 文字目で表されており、黒の時 AiA_i#、白の時 AiA_i. となっています。

以下のシミュレーションを行うとき、最終的なボールの色はどうなりますか。

  • まず、キューに整数 XX を追加し、ボール XX を青で塗る。
  • その後、キューが空になるまで以下の操作を繰り返す。
    • キューの先頭要素を pos\text{pos} とする
    • ボール pos1\text{pos}-1 が白のとき、これを青で塗り、キューに pos1\text{pos}-1 を追加する
    • ボール pos+1\text{pos}+1 が白のとき、これを青で塗り、キューに pos+1\text{pos}+1 を追加する

入力

入力は以下の形式で標準入力から与えられます。

NN XX
AA

出力

シミュレーションを行った後のボールの色を長さNN の文字列として出力してください。

出力する文字列の ii 文字目は、ボール ii の色が黒の時は #、白の時は .、青の時は @ としてください。

制約

  • 1N100,0001 \leq N \leq 100,000
  • 1XN1 \leq X \leq N
  • AA#. からなる文字列
  • ボール XX は白

入力例 1 Copy

Copy
5 3
#...#

出力例 1 Copy

Copy
#@@@#


2023-02-05 (日)
19:27:13 +00:00