#AGC026E. [AGC026E] Synchronized Subsequence

[AGC026E] Synchronized Subsequence

题目描述

N N 個の aN N 個の b からなる,長さ 2N 2N の文字列 S S が与えられます。

あなたは S S からいくつかの文字を選びます。ただし各 i = 1,2,...,N i\ =\ 1,2,...,N について,S S i i 番目に出現する ai i 番目に出現する b から片方だけ選ぶことは出来ません。 そして選んだ文字たちを( S S での順番通りに)結合します。

こうして得られる文字列のうち,辞書順で最大のものを求めて下さい。

输入格式

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

N N S S

输出格式

条件を満たす T T のうち,辞書順で最大のものを出力して下さい。

题目大意

有一个长度为 2N2 N 的仅由字符 a,b\mathtt{a}, \mathtt{b} 构成的字符串,且 a\mathtt{a} 的个数恰好等于 b\mathtt{b} 的个数,都出现了 NN 次。

你需要保留一些字符,剩下的字符删掉。对于一个 ii,你可以保留从左往右数的第 iia\mathtt{a} 和第 iib\mathtt{b}

注意,对于这两个字符,只能同时保留或同时删掉,不能只保留其中一个。

请你求出能得到的字典序最大的串。

  • 1N3×1031 \le N \le 3 \times {10}^3
3
aababb
abab
3
bbabaa
bbabaa
6
bbbaabbabaaa
bbbabaaa
9
abbbaababaababbaba
bbaababababa

提示

制約

  • 1  N  3000 1\ \leq\ N\ \leq\ 3000
  • S S N N 個の ab からなる,長さ 2N 2N の文字列である。

Sample Explanation 1

S S 1, 3, 4, 6 1,\ 3,\ 4,\ 6 番目の文字からなる部分列 T T は,条件を満たします。

Sample Explanation 2

全ての文字を選ぶことも可能です。