码迷,mamicode.com
首页 > 其他好文 > 详细

禁止字符串 [POJ3691缩减版]

时间:2018-07-21 20:31:11      阅读:146      评论:0      收藏:0      [点我收藏+]

标签:不成功   四种   缩减   组成   长度   处理   strong   size   输入   

题意
考虑只由‘A‘,‘G‘,‘C‘,‘T‘四种字符组成的DNF字符串
给定一个长度为k的字符串S,计算长度恰好为n的且
不包含S的字符串的个数输入结果对10009取膜
1<=k<=100,1<=n<=10000

分析
我们尝试构造一个串,显然是当最后若干位和S串前若干位重复的才会算作不成功的串,我们记next[i][j],为长度为i的且和S前i位相同的串,最后加上字符j后,有x个字符与S的的前x个字符一样的数量x。
同时我们记dp[i][j]为处理到第i个字符,最后j位和S前j位重合,那么枚举新加的字符k,加入k后,新串末尾和S前若干个字符相同的字符数是next[j][k],那么我们可以得到状态转移方程dp[i][next[j][k]]+=dp[i-1][j](next[j][k]!=k,带膜)

禁止字符串 [POJ3691缩减版]

标签:不成功   四种   缩减   组成   长度   处理   strong   size   输入   

原文地址:https://www.cnblogs.com/ibilllee/p/9347743.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!