No.1894 Delete AB
タグ : / 解いたユーザー数 125
作問者 :
問題文
A
, B
からなる長さ の文字列 が与えられます。
に対して以下の操作を 回以上行ってできる文字列のうち、辞書順で最大のものを求めてください。
- に含まれる連続部分文字列
AB
のうち、好きなものを選んで消去する。その後、残った文字列を順序を保ったまま結合する。
個のテストケースが与えられるので、それぞれについて解いてください。
辞書順とは(クリックで展開)
つの相異なる文字列 が与えられたとき、 と の辞書順による大小は以下のように決まります。 の 文字目を のように表します。
- と のうち、長さが短い方の文字列の長さを とする。
- なる が存在するならば、そのうち最小の を とする。アルファベット順で ならば 、 ならば と決定する。
- なる が存在しないならば、 の長さ を比較し、 ならば 、 ならば と決定する。
制約
- と は整数
- は
A
,B
からなる長さ の文字列 - つの入力ファイルにおいて、 の総和は 以下
入力
入力は標準入力から与えられる。 行目は以下の形式で与えられる。
以下、 個のテストケースがそれぞれ以下の形式で与えられる。
出力
行にわたって出力せよ。 行目には、 番目のテストケースに対する答えを出力せよ。
最後に改行すること。
サンプル
サンプル1
入力
5 5 ABABB 3 BAB 6 AAABBB 4 ABAB 8 BBABBABA
出力
B BAB AB ABAB BBBABA
つのテストケースが与えられています。
つめのテストケースについて、 ABABB
の 文字目と 文字目は AB
となっています。これを消去すると、できる文字列は ABB
です。 その後、 ABB
から AB
を消去することで、 B
を得ることができます。 から操作を行うことで B
より辞書順で大きい文字列を作ることはできないので答えは B
です。
つめのテストケースについて、 BAB
の 文字目は AB
となっていて、これを消去すると B
が得られます。しかし、辞書順で BAB
B
なので、より大きい BAB
が答えです。
つめのテストケースでは、 AAABBB
AABB
AB
と操作することで、辞書順最大の文字列 AB
を得ることができます。
提出するには、Twitter 、GitHub、 Googleもしくは右上の雲マークをクリックしてアカウントを作成してください。