字符串
四维2000
SW2000
展开
-
HDU - 6153 A Secret (KMP)
题意: 给出两个长度小于1e6的字符串,问第一字符串的所有字串中有多少个和第二个字符串的后缀相同,输出每个相同的字串的长度和,答案还需要%1e9+7 分析: 把第二个字符串反转后,用KMP预处理,在算出nxt数组之外还需要记录下当前字符匹配后对答案的贡献base,计算的公式为base[i]=base[nxt[i]]+i 代码: #include<bits/stdc++.h> #define fi first #define se second #define mid (l+r>原创 2020-11-04 19:47:48 · 134 阅读 · 0 评论 -
HDU 3746 Cyclic Nacklace(KMP)
题意:给出一个字符串,问最少加几个字符可以时新的字符串拥有两个以上循环节 思路:只有当nxt[len]!=0时最后一个字符才可以再形成一个新的循环节,此时循环节的长度时len-nxt[len],分类讨论下就可以。最奇怪的一点是,如果直接用cin输入string时会wa,最后只能换成字符串的形式才可以a,这点是真的不知道为什么,但string会出现问题这点需要特别注意 代码: #includ...原创 2020-02-11 09:19:42 · 237 阅读 · 0 评论