摘掉灯泡以后,两边留下的都是各自原来的子序列。两条子序列必须相同,记作 X,并且 X 里相邻字符不能相同。摘掉的只数是 ∣p∣+∣q∣−2∣X∣,所以只要把这种 X 尽量留长。
车间并列挂着甲、乙两条指示灯链。每条链由若干只灯泡串成,每只灯泡只亮红、绿、蓝中的一种,分别记作 R、G、B。
可以摘掉任意灯泡。摘掉之后,它左右两边的灯泡会靠拢接上,原有的先后次序不变。收工时两条链留下的颜色序列必须一模一样,并且序列里紧挨着的两只灯泡不能同色。
请算出最少一共要摘掉多少只灯泡。若两边都摘空,两条空链视为相同,也视为满足相邻不同色。
仅一行,两个由大写字母组成的字符串 q 和 p,中间用一个空格分开。q 是乙链,p 是甲链。
两个字符串只含 R、G、B。
1≤∣q∣,∣p∣≤2000
只写出一个整数,表示最少摘掉的灯泡只数。
输入
RBRG RGBG
输出
2
说明
甲链 RGBG 摘掉第二只,剩下 RBG。乙链 RBRG 摘掉第三只,剩下 RBG。RBG 中相邻颜色都不一样。两边各摘一只,总数是 2。
输入
GB GB
输出
0
说明
两条链本来就是 GB,彼此相同,相邻颜色也不同,不用摘。
输入
BBB GGG
输出
6
说明
乙链全是 B,甲链全是 G,没有任何一只灯泡能同时留在两边。六只都要摘掉。
© CodeFun2000 · 使用条款
Scan the QR code below with WeChat to sign in
First-time scan will create your account automatically
请使用微信扫描下方二维码完成注册