HDU 3336-Count the string
来源:互联网 发布:数据对比分析软件 编辑:程序博客网 时间:2024/06/07 00:21
KMP+DP
#include<cstdio> #include<cstring> using namespace std; #define MAX 200005 #define mod 10007 int next[MAX],num[MAX]; char s[MAX]; void get_next() { int i=0,j=-1; next[0]=-1; for(; s[i];) if(j==-1||s[i]==s[j]) { ++i; ++j; next[i]=j; } else j=next[j]; } int main() { int t,n; scanf("%d",&t); while(t--) { int summ=0; memset(num,0,sizeof(num)); scanf("%d",&n); scanf("%s",s); get_next(); for(int i=1;i<=n;++i) num[next[i]]=(num[next[i]]+1)%mod; for(int i=1;i<=n;++i) if(num[i]) summ=(summ+num[i]+1)%mod; else summ=(summ+1)%mod; printf("%d\n",summ); } return 0; }
0 0
- HDU 3336 Count the string
- hdu 3336 Count the string
- hdu 3336 Count the string
- hdu 3336 Count the string
- hdu 3336 Count the string
- hdu 3336 Count the string
- hdu 3336 Count the string
- HDU-Count the string -3336
- hdu 3336 Count the string
- HDU 3336 Count the string
- HDU 3336Count the string
- HDU 3336Count the string
- hdu 3336 Count the string
- hdu 3336 count the string
- HDU 3336 Count the string
- HDU - 3336 Count the string
- hdu 3336 Count the string
- hdu 3336 Count the string
- 数据结构中常见的树(BST二叉搜索树、AVL平衡二叉树、RBT红黑树、B-树、B+树、B*树)
- [原创]SPINNER 改变字体,颜色等...
- C++ 编译器生成默认构造函数的四种情况
- 序列化与反序列化
- imageview的自定义圆形图片
- HDU 3336-Count the string
- Java基础Math函数使用
- java开发工程师需求
- 嘉兴培训第二天——第一堂课
- Python 闭包
- Android日期格式化
- Java基础之While循环
- ZQUOJ1336最小生成树(MST)之Kruskal
- 那些游戏开发牛人的博客和IT学习网站