博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Period(sdut2476)
阅读量:4698 次
发布时间:2019-06-09

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

[题目大意]:给定一个字符串,求到哪一位时的字串是前几位循环组成的,并求出循环次数。
思路:求每个前缀的最小循环周:从i到n枚举len,如果len%(len-next[len])==0,则这个前缀是由循环节组成的,且循环次数为len/(len-next[len])//len为当前i的值,next[len]为当前j的值。 #include 
#include
#include
char a[1000001]; int next[1000001]; int n; void  Getnext() {
    int i=0;     int j=-1;     next[0]=-1;   while(i
1)          {
                 printf("%d %d\n",i,i/(i-next[i]));              }          }          else j=next[j];      } } int main() {
    int k=0;       while(scanf("%d",&n)!=EOF)      {
         k++;          if(n==0) break;           getchar();           for(int i=0;i

转载于:https://www.cnblogs.com/zhangmingcheng/p/3793400.html

你可能感兴趣的文章
腾讯面试问题
查看>>
自定义标题栏右键菜单
查看>>
Bootstrap概述
查看>>
elementUi源码解析(1)--项目结构篇
查看>>
C#中用DateTime的ParseExact方法解析日期时间(excel中使用系统默认的日期格式)
查看>>
任务二 阅读报告
查看>>
高阶函数
查看>>
W3100SM-S 短信猫代码发送 上
查看>>
android sdk 帮助文档下载地址
查看>>
PRIVACY POLICY
查看>>
装完Win8后推荐进行的优化
查看>>
iOS 数组排序(原创)
查看>>
SQL Server中事件探测器Profiler的使用
查看>>
MySQL绿色版安装(mysql-5.7.12-win32)
查看>>
CSS之选择器
查看>>
Canvas 数学、物理、动画学习笔记一
查看>>
Java DOM方式解析XML(模板)
查看>>
oracle表,视图,存储过程,函数,序列.....查询
查看>>
快速切题 cf118A
查看>>
ANDROID开发java.lang.NoClassDefFoundError: com.baidu.location.LocationClient的解决办法
查看>>