Python言語で提出する際の諸注意

  • この問題においてPython言語で解く際は、必ず入力の後に strip 関数を適用してください
    つまり入力の際に S = input().strip() と書いてください(でないとジャッジの環境上、WAになる可能性が高いです)
  • 処理系に pypyCPython が存在しますが、実装方法によっては適切なものを選ばないとTLEとなります。注意してください。
    (筆者の実装では CPython で提出しました)

Story

🖥

まっちゃラテ君は、就活でセキュリティ関係について調べていました。
すると、「RLO」というサイバー攻撃手法に興味が沸いたようです。攻撃の方法に興味があるだけであって攻撃に興味が沸いたわけではないです。

でもすごいですね今の技術は。こんな、ファイル名を簡単に錯乱するみたいなことができるんだ...

問題

英小文字と @ からなる文字列 SS が与えられます。
次のような操作を i=1,2,,Si=1,2,\dots,|S| の順で行います。ここで SSll 文字目を SlS_l と表します。

  • SiS_i@ でないなら、何もしない
  • SiS_i@ であるとき、ii 文字目の文字を削除し、i+1i+1 文字目から末尾までの連続部分文字列を逆順にする。この結果を新たに SS とする。
    なおこの逆順にする対象である連続部分文字列に @ が含まれていたとしても適用される。

すべての @ に対して処理を行った後の文字列を求めてください。

入力

入力は以下の形式で与えられる。

SS

制約

  • 1S2×1051\le |S|\le 2\times 10^5
  • SS は英小文字、 @ からなる
  • SS に英小文字が必ず 11 つ以上含まれる

出力

答えを出力せよ。

入出力例

入力例1
abc@exepdf
出力例1
abcfdpexe

i=4i=4 のとき、S4S_4@ です。
よって 44 文字目の文字を消去し、55 文字目から末尾までの連続部分文字列を逆順にし、abcfdpexe を得ます。これを新たに SS とします。

以上から答えは abcfdpexe となります。

入力例2
ab@de@c
出力例2
abcde

i=3i=3 のとき、S3S_3@ です。
よって 33 文字目を消去し、44 文字目から末尾までの連続部分文字列を逆順にして abc@ed を得ます。これを新たに SS とします。
そのあと i=4i=4 に対して S4S_4@ なので、同様に操作を行って abcde を得ます。これを新たに SS とします。

以上から答えは abcde になります。

入力例3
abc
出力例3
abc

@ が一つも含まれない場合があります。

入力例4
m@ch@ate@ra@ta
出力例4
matcharate

Submit


Go (1.21)