传送门:http://www.lydsy.com/JudgeOnline/problem.php?id=1355

题目大意:

1355: [Baltic2009]Radio Transmission

Time Limit: 10 Sec  Memory Limit: 64 MB
Submit: 591  Solved: 390
[Submit][Status][Discuss]

Description

给你一个字符串,它是由某个字符串不断自我连接形成的。 但是这个字符串是不确定的,现在只想知道它的最短长度是多少.

Input

第一行给出字符串的长度,1 < L ≤ 1,000,000. 第二行给出一个字符串,全由小写字母组成.

Output

输出最短的长度

Sample Input

8
cabcabca

Sample Output

3

HINT

对于样例,我们可以利用"abc"不断自我连接得到"abcabcabc",读入的cabcabca,是它的子串

Source

题解:这题就是KMP next数组的应用啦(水),最小值就是n-next[n](很容易想吧,因为可行解集为{n-next[n],n-next[next[n]]....)所以最小解显然为n-next[n];

 1 #include<iostream>
 2 #include<cstring>
 3 #include<cstdio>
 4 #define inf 0x7fffffff
 5 int n,ans;
 6 int next[1000100];
 7 char s[1000100];
 8 using namespace std;
 9 int main()
10 {
11     scanf("%d",&n);
12     scanf("%s",s+1);
13     ans=0;
14     int fix=0;
15     for (int i=2; i<=n; i++)
16     {
17         while (fix && s[fix+1]!=s[i]) fix=next[fix];
18         if (s[fix+1]==s[i]) fix++;
19         next[i]=fix;
20     }
21     printf("%d\n",n-next[n]);
22 }

View Code

转载于:https://www.cnblogs.com/HQHQ/p/5280425.html

bzoj1355——2016——3——15相关推荐

  1. 【iOS工具】rvm、Ruby环境和CocoaPods安装使用及相关报错问题解决(2016 12 15 更新)...

    〇.前言 在iOS开发中 [CocoaPods](https://github.com/CocoaPods/CocoaPods) 作为库依赖管理工具就是一把利器. 有了 CocoaPods 则无需再通 ...

  2. 电大计算机专业英语形成性考试,2016电大15版英语4形成性考核册作业答案.doc

    2016电大15版英语4形成性考核册作业答案 06版英语4形成性考核册作业答案 形考册第一次作业答案第一部分:交际用语(每题2分,共10分)1-5小题:阅读下面的小对话,从A.B.C.D四个选项中选出 ...

  3. Android Retrofit 2.0使用——转载吴小龙同学http://wuxiaolong.me/2016/01/15/retrofit/

    这几天学习Retrofit 看到一篇非常好的文章如下: 原网址为:http://wuxiaolong.me/2016/01/15/retrofit/感谢吴小龙同学的默默奉献. 实例带你了解Retrof ...

  4. 【NOIP模拟题】【DP】【同余最短路】【暴力剪枝】2016.11.15 第二题 小L的牛栏 题解

    小L的牛栏 [题目描述] 小L通过泥萌的帮助,成功解决了二叉树的修改问题,并因此写了一篇论文, 成功报送了叉院(羡慕不?).勤奋又勤思的他在研究生时期成功转系,考入了北京大学光华管理学院!毕业后,凭着 ...

  5. Android新手入门2016(15)--Gallery画廊

    本文来自肥宝传说之路,引用必须注明出处! Gallery是Android查看图片的一个工具,用户使用非常方便. 可以通过左右滑动来查看不同的图片 代码比较简单,但是还是搞了一整天,因为碰到了一些问题. ...

  6. 2016.08.15

    有些事是这个样子的,看起来简单,上手也容易,可当你慢慢的深入,才发觉事情根本不像当初看上去那么简单,就比如说,编程. 不讳言的说,目前挺喜欢码代码这件事的,只不过目前能力有限,基本都还是模仿,从别人的 ...

  7. 2016.7.15 NOIP2014模拟试题解题报告(又名:方克顺和他的正余弦朋友们(

    我发现自从我开始写博客以后OI成绩上升很明显啊orzzz,继续保持继续保持(然而昨晚上开夜车到十二点,感觉这次没发挥好)(下次没考好就尴尬了)(所以一定要考好!),嗯这次考得还是很不错的,也深入思考了 ...

  8. 2016/1/15代码

    <!DOCTYPE html> <html> <head lang="en"> <meta charset="UTF-8&quo ...

  9. 骑行318、 2016.7.15

    早上起来天气不错,没有下雨但是天有点暗,让点担心而已,不过有点感冒了,不知道是不是昨晚太热了踢被子感冒了,因为在那个小房间没有窗也不通风....因为来晚了没有靠窗的四人间了,本来今天是到禾尼乡的,后来 ...

  10. 转载:2016.3.15 回忆录

    问题一: 初次见面,先手写一段二分查找的算法吧,假定数组是由大到小排序的! 答: 二分查找,别名折半查找.其思想很简单,标准写法如下: //有序数组递减排列 int binarySearch(int* ...

最新文章

  1. 2022-2028年中国领带行业投资分析及前景预测报告
  2. 批量修改数据映射_Docker 数据卷操作「Docker 系列-6」
  3. 蛋花花简单阐述HTML5和Web前端的区别
  4. 对函数指针与typedef的理解:typedef void (*sighandler_t)(int)
  5. Spring Data JPA_多表关联查询中应该注意的问题
  6. Golang的for range遍历
  7. numpy pandas 查找在一个区间中的值
  8. 剑指offer面试题[12]-打印1到最大的n位数
  9. 漏洞C:/Windows/Fonts/csrss.exe文件找不到简单查找方法
  10. 有哪些值得推荐的好的算法书?
  11. 东大22春实用写作X《实用写作》在线平时作业2百分非答案
  12. ios键盘横屏_iOS强制转换横竖屏和键盘方向控制
  13. php file get contents 总是超时,file_get_contents超时问题及解决方案
  14. JMeter 扩展开发:扩展 TCP 取样器
  15. 苹果公司的企业文化_企业文化到底有什么用?
  16. 读《一个聪明的投资者 本杰明 - 格雷厄姆》
  17. Service(服务)
  18. 腾讯面试:《警察抓小偷逻辑题》
  19. 认识LINUX各个版本
  20. 【C】C语言大作业——学生学籍管理系统

热门文章

  1. 如何在 iPhone 和 iPad 上快速找到合适照片?
  2. AirServer for Mac(ios投屏到mac的实用工具)
  3. FontExplorer X Pro for Mac字体管理软件
  4. 在新款mac上找回经典的开机启动声,一条命令轻松搞定
  5. 苹果Mac更改备忘录默认字体的方法图解
  6. Garden Planner中使用3D视图的技巧
  7. 阿里云服务器安装mysql数据库及连接使用
  8. CodeMix使用的语言和框架(一):JavaScript
  9. c#中Split用法总结
  10. JavaBean、bean 、POJO、PO、DTO、VO、BO 、EJB、EntityBean