博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
BZOJ 1355 KMP中next数组的应用
阅读量:7122 次
发布时间:2019-06-28

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

思路:

我们知道 next[i]是失配的i下一步要去哪儿 next[n]就是失配的n要去哪儿
n-next[n]就是答案(即最短周期)啦

//By SiriusRen#include 
using namespace std;int n,next[1000050],j;char a[1000050];int main(){ scanf("%d%s",&n,a+1); for(int i=2;i<=n;i++){ while(j&&a[i]!=a[j+1])j=next[j]; if(a[i]==a[j+1])j++; next[i]=j; } printf("%d\n",n-next[n]);}

这里写图片描述

转载于:https://www.cnblogs.com/SiriusRen/p/6532183.html

你可能感兴趣的文章
JAVA 设计模式 访问者模式
查看>>
SQL Server清空日志及所有表的数据
查看>>
浅谈ThreadPool 线程池
查看>>
J2EE实现XML文件的读取与导出(源码)
查看>>
Azure Backup (2) Azure备份服务
查看>>
使用 ftrace 调试 Linux 内核【转】
查看>>
硬链接和软连接(符号链接)
查看>>
css3属性 -webkit-filter
查看>>
[转] 从数据库中读取图片并导入Excel文件,C#方式
查看>>
java 判断周末
查看>>
国内第一本micropython的书出版《机器人Python极客编程入门与实战》
查看>>
Facebook API 开发记录
查看>>
未来大数据将改变实体营销的5个关键点
查看>>
航空公司大数据建设的思考
查看>>
优秀程序员眼中的整洁代码
查看>>
为什么说人工智能是业界下一个增长点?
查看>>
大数据开放面对的瓶颈究竟是什么?
查看>>
威联通科技QNAP QTS4.0北京发布会落幕
查看>>
从“憋大招”到快速迭代 细数Windows 10变化背后的小秘密
查看>>
小城大梦 鄂尔多斯康巴什“互联网+智慧城市”项目启动
查看>>