特定の連続する文字列を消す問題

今回のように短い文字列を消す場合は典型的な方法がある。

空の文字列の後ろに入力した文字列を左から追加していく。追加毎に後ろの文字が消す文字になっているか確認する。(今回の場合は後ろ二文字を確認すれば良い。)消す文字だった場合は消す文字の数を後ろから消せば良い。

解答例(C++)
https://atcoder.jp/contests/agc005/submissions/27596768

ちなみに公式解説ではstackを使った方法を紹介しているが、3文字以上になった場合は煩雑になるのでC++で短い文字列を消すなら解答例の方が汎用的で良いかなと思ってます。