大和証券プログラミングコンテスト2022 Spring (AtCoder Regular Contest 138) B - 01 Generation (500)
どちらの操作でも先頭が0になるのでそうでなければ不可能
逆に操作して$ Aから空文字列が作れるか判定する
dequeに配列を入れて以下を行う
配列が空でなくて最後の文字が0である限り後ろから消す
空になれば完了
先頭が0でないなら不可能
操作1を行う
先頭を取り出して残りを反転
反転を愚直に行うと1操作辺り$ \mathcal{O}(N)になってしまうので反転状態かどうかをフラグで持つことにする
操作が$ \mathcal{O}(N)なので全体で$ \mathcal{O}(N)