2024CCPC网络赛题目(二)包含

2024CCPC网络赛题目(二)包含D J E

所有题目链接

D 编码器-解码器
解题思路

考虑每次迭代,每次实则就是用一个本身去更新自己,再用一个字符去进行更新(中间的字符)

那么可以使用区间dp,使得更新后能将进行到i个字符时t字符串中所有的区间情况找到。

没学过区间dp的可以看区间dp链接

在迭代时,只需要使用区间合并的方式,将两个相同性质的区间合并即可,分配的方案数显然已经确立

对于新增加的字符,正常dp处理即可。

值得注意的是,由于需要使用自身对自进行dp,所以不用继承之前的影响
∑ j = 1 m ∑ k = j m ∑ c = j − 1 k − 1 { d p [ i ] [ j ] [ k ] = ( d p [ i ] [ j ] [ k ] + d p [ i − 1 ] [ j ] [ c ] ∗ d p [ i − 1 ] [ c + 1 ] [ k ] ) ; , ( d p [ i ] [ j ] [ k ] + = d p [ i − 1 ] [ j ] [ c ] ∗ d p [ i − 1 ] [ c + 2 ] [ k ] ∣ 当 s 1 [ i ] = = s 2 [ c + 1 ] 时 ) \sum_{j=1}^{m}\sum_{k=j}^{m}\sum_{c=j-1}^{k-1}\begin{cases}dp[i][j][k] = (dp[i][j][k]+dp[i-1][j][c]*dp[i-1][c+1][k]); \\, (dp[i][j][k]+=dp[i-1][j][c]*dp[i-1][c+2][k]|当s1[i]==s2[c+1]时)\end{cases} j=1mk=jmc=j1k1{ dp[i][j][k]=(dp[i][j][k]+dp[i1][j][c]dp[i1][c+1][k]);,(dp[i][j][k]+=dp[i1][j][c]dp[i1][c+2][k]s1[i]==s2[c+1])

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值