博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
poj 1961 Period
阅读量:4839 次
发布时间:2019-06-11

本文共 1023 字,大约阅读时间需要 3 分钟。

同上

1 #include
2 #include
3 #define N 1000005 4 #define LL long long 5 #define inf 0x3f3f3f3f 6 using namespace std; 7 inline int ra() 8 { 9 int x=0,f=1; char ch=getchar();10 while (ch<'0' || ch>'9') {
if (ch=='-') f=-1; ch=getchar();}11 while (ch>='0' && ch<='9') {x=x*10+ch-'0'; ch=getchar();}12 return x*f;13 }14 int n,cas,fail[N];15 char ch[N];16 int main()17 {18 while (scanf("%d",&n))19 {20 if (!n) break;21 scanf("%s",ch+1);22 int fix=0;23 for (int i=2; i<=n; i++)24 {25 while (ch[i]!=ch[fix+1] && fix) fix=fail[fix];26 if (ch[fix+1]==ch[i]) fix++; fail[i]=fix;27 }28 printf("Test case #%d\n",++cas);29 for (int i=2; i<=n; i++)30 {31 int x=i-fail[i];32 if (i%x || x==i) continue;33 printf("%d %d\n",i,i/x);34 }35 printf("\n");36 }37 return 0;38 }

 

转载于:https://www.cnblogs.com/ccd2333/p/6440193.html

你可能感兴趣的文章
大整数相关的几道题
查看>>
利用表格实现大图轮播
查看>>
SpringBoot集成jsp
查看>>
HTML+CSS 内容居中效果
查看>>
关于对话框
查看>>
Jmeter-元件的作用域和执行顺序
查看>>
ArrayList集合
查看>>
Redis集群搭建与简单使用
查看>>
VS2010连接SQLite数据库
查看>>
30分钟学会如何使用Apache Shiro
查看>>
asp.net部署时加密config文件
查看>>
想开个网店的。。学习一下vancl的分析
查看>>
DDD:在基于关系数据库的领域,聚合的边界等于并发管理的边界。
查看>>
poj 1961 Period
查看>>
BZOJ1560: [JSOI2009]火星藏宝图
查看>>
play framework 相关
查看>>
cf1008 codeforces round #535(div3) E1. Array and Segments (Easy version)
查看>>
React 学习笔记
查看>>
LeetCode_Combinations
查看>>
快手第一题
查看>>