HDU1358.cpp(KMP学习)
来源:互联网 发布:js 元素属性赋值 编辑:程序博客网 时间:2024/05/15 07:35
/*字符串长度为n,那么n-next[n](字符串从0开始)是最小循环节, 如果n能整除n-next[n],周期为n/(n-next[n]);*/#include<stdio.h>#include<string.h>#define size 1000002int n;char s[size];int next[size];int temp;void getnext(){ int i,j; next[0]=-1; i=0;j=-1; while(i<=n) { if(j==-1 || s[i]==s[j]) i++,j++,next[i]=j; else j=next[j]; }}int main(){ int T=1; while(~scanf("%d",&n)&&n) { getchar(); scanf("%s",s); getnext(); printf("Test case #%d\n",T++); for(int i=0;i<n;i++) { temp=i+1-next[i+1]; if(i==0)continue; if((i+1)%temp==0&&i+1>temp) { printf("%d %d\n",i+1,(i+1)/temp); } } printf("\n"); } return 0;}
- HDU1358.cpp(KMP学习)
- HDU1358 Period(KMP)
- HDU1358-Period(KMP)
- HDU1358 Period(KMP)
- hdu1358 KMP
- KMP HDU1358
- hdu1358 kmp
- HDU1358-kmp
- HDU1358 Period(KMP找循环前缀)
- Period hdu1358 KMP
- hdu1358 period ,Kmp
- hdu1358 Period kmp+模拟
- hdu1358 Period(kmp)
- HDU1358 Period【KMP】
- hdu1358 Period(kmp周期)
- hdu1358 Period--KMP
- hdu1358 KMP循环节
- hdu1358(KMP+最小循环节)
- POJ-2480 Loangge's problem
- “双11”电商促销大战,幸福了谁?
- 选择排序Selection sort
- Mapped Statements collection already contains value for com.syoby.test.sample.mybatis.ISampleMapper.
- jquery load 事件用法
- HDU1358.cpp(KMP学习)
- 使用miniupnpd-->upnp协议 映射本地端口到外网
- 通过safari来安装IOS App到你的device
- cocos2d-x-2.0 ListView使用(转)
- ubuntu12.04 mysql对用户授权问题
- ios中,判断json,数据库等方式获取的字符串,是null的时候怎么判断
- 学习了近半年的.net 第一次项目。
- HDU 3613 Best Reward ---- 拓展KMP
- SAP 如何找配置