'commit'
This commit is contained in:
18
TangDou/AcWing/网上大佬的博客.txt
Normal file
18
TangDou/AcWing/网上大佬的博客.txt
Normal file
@@ -0,0 +1,18 @@
|
||||
非常棒的信奥题解!
|
||||
https://blog.csdn.net/qq_44791484
|
||||
|
||||
https://www.cnblogs.com/newblg/p/14610243.html
|
||||
鬼才想得到的解法
|
||||
|
||||
思路:
|
||||
|
||||
在验证某串a是否为b的子串时,常常使用kmp算法.当子串匹配下标j = 子串长度时,说明串a是串b的子串.如果i取到串b的最后一位时,j还没有 = a长度,说明a不是b的子串.
|
||||
|
||||
在这道题,我们需要构造串b,使得a不是b的子串,也就是j不能取到串a的长度.假设当前j是a的待匹配位,b的下一位构造位为i.第i位有26种取值,对于每个取值,j的下一步位置大多不同.将下一步的取值看成转化的状态的话,就能构造f[i][j]表示b构造了前i个字符,匹配了a子串的前j位.那么f[i][j] += f[i-1][k].
|
||||
|
||||
因为第i个字符是需要枚举a~z的,取到a[k]后要做一次kmp匹配,求第i位可以匹配的位置.
|
||||
|
||||
又一个优秀的博主
|
||||
https://blog.csdn.net/qq_45832461?type=blog
|
||||
https://www.cnblogs.com/zbsy-wwx/p/11742074.html
|
||||
|
||||
Reference in New Issue
Block a user