题目描述
在魔法学院的炼金实验室里,有两条并列的宝石阶梯,每条阶梯上自顶向下共有 颗宝石,每颗宝石的颜色要么是“蓝”(B),要么是“红”(R)。你可以对每一级台阶,选择是否将两条阶梯上的宝石互换位置。这样一来,所有可能的阶梯组合共有 种。
在这 种组合中,任意一对阶梯都可以看成两条长度为 的颜色序列。我们希望找到一种交换方案,使得这两条序列的最长公共子序列(不要求连续)尽可能长;如果存在多种等长的公共子序列,则选取字典序最小的那一个。
输入格式
第一行包含整数 ,表示阶梯的级数。
第二行是长度为 的字符串 ,仅由 B、R 构成,表示第一条阶梯自顶向下的宝石颜色。
第三行是长度为 的字符串 ,仅由 B、R 构成,表示第二条阶梯自顶向下的宝石颜色。
输出格式
输出一个由 B 和 R 组成的字符串,表示在最佳交换方案下,两条阶梯颜色序列的最长公共子序列;若有多种等长方案,输出其中字典序最小的。若没有方案,输出 。
4
BRBB
RRRR
RRB
1
R
B
-1
说明/提示
数据范围
对于 的数据, 且两条阶梯宝石的颜色互不相同。
对于另 的数据,每条阶梯各只有一种颜色的宝石。
对于另 的数据,。
对于 的数据,保证:
- 均为长度为 的字符串,仅包含字符
B、R
相关
在下列比赛中:
京公网安备11010802045784号