牛客 删括号

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
删括号

思路:
在思考这题时发现此题和编辑距离题目十分相似。
编辑距离
对于本题题目的状态设置看完题解后感觉十分巧妙,在原有二维基础上加了个记录删除’(‘括号数来进行状态转移。
状态设置:布尔类型(bool)f(i,j,k)表示s串删除进行删除操作后,可以与t串匹配,删除的左括号与右括号之差为k。
也就说明当k为0时删除的是合法序列。
那么状态如何转移呢:
不难发现在dp[i][j][k]合法的情况下,如果此时 s[i]=t[i]且k=0 那么说明dp[i+1][j+1][0] 也是合法的。
而后对于s串往后加了一个字符串讨论,如果加了一个’('情况下,那么在删除一个’(‘后依旧可以和t串匹配即 dp[i+1][j][k+1]=true 如果为’)'则需要删除此字符串才能与t串匹配这时需要寻找dp[i][j][k>0]情况下是否有合法的,然后进行状态转移,即dp[i][j][k-1]=true。

#include<ios
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值