[BZOJ1355][Baltic2009]Radio Transmission

试题描述

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

输入

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

输出

输出最短的长度

输入示例

8
cabcabca

输出示例

3

数据规模及约定

见“输入

题解

就是找到最大的 boarder,然后用总长度减去它的长度就是最小周期。

#include <iostream>
#include <cstdio>
#include <cstdlib>
#include <cstring>
#include <cctype>
#include <algorithm>
using namespace std;int read() {int x = 0, f = 1; char c = getchar();while(!isdigit(c)){ if(c == '-') f = -1; c = getchar(); }while(isdigit(c)){ x = x * 10 + c - '0'; c = getchar(); }return x * f;
}#define maxn 1000010
char S[maxn];
int Fail[maxn];int main() {int n = read();scanf("%s", S + 1);for(int i = 2; i <= n + 1; i++) {int j = Fail[i-1];while(j > 1 && S[j] != S[i-1]) j = Fail[j];Fail[i] = S[j] == S[i-1] ? j + 1 : 1;}printf("%d\n", n + 1 - Fail[n+1]);return 0;
}

转载于:https://www.cnblogs.com/xiao-ju-ruo-xjr/p/6482369.html

[BZOJ1355][Baltic2009]Radio Transmission相关推荐

  1. BZOJ1355: [Baltic2009]Radio Transmission

    题目大意:给出一个字符串,已知它是一个字符串S不断反复后构成的无限长的字符串的一个子串,求S的最短长度是多少. 思路:利用KMP算法,答案就是n-next[n].证明例如以下: 图太渣了... 另一种 ...

  2. [Baltic2009]Radio Transmission

    bzoj 1355: [Baltic2009]Radio Transmission http://www.lydsy.com/JudgeOnline/problem.php?id=1355 Time ...

  3. [bzoj1355][Baltic2009]Radio Transmission_KMP

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

  4. 1355: [Baltic2009]Radio Transmission

    Time Limit: 10 Sec  Memory Limit: 64 MB Submit: 958  Solved: 659 [Submit][Status][Discuss] Descripti ...

  5. bzoj1355【Baltic2009】Radio Transmission

    1355: [Baltic2009]Radio Transmission Time Limit: 10 Sec   Memory Limit: 64 MB Submit: 649   Solved:  ...

  6. 【KMP】Radio Transmission(最小循环子串)

    [KMP]Radio Transmission(最小循环子串) Description 给你一个字符串,它是由某个字符串不断自我连接形成的.但是这个字符串是不确定的,现在只想知道它的最短长度是多少. ...

  7. P4391 [BOI2009]Radio Transmission 无线传输(Kmp)

    [BOI2009]Radio Transmission 无线传输 - 洛谷https://www.luogu.com.cn/problem/P4391 #include <iostream> ...

  8. Radio Transmission

    请读者在阅读前充分理解KMP与其失配函数的意义. [BOI2009] Radio Transmission 无线传输 题目描述 给你一个字符串 s 1 s_1 s1​,它是由某个字符串 s 2 s_2 ...

  9. P4391 [BOI2009]Radio Transmission 无线传输

    呐呐呐题面 这题可以说是kmp的简化版,也就是说只用求一下next数组,答案输出为n-next[n],那么为什么呢,其实这也很好想,next[i]存储的是下标为i的前缀与从头开始最长的相同前缀的尾下标 ...

最新文章

  1. samtools merge_【生信工具】Samtools 安装与使用 | “十年以后,工具难免沦为朋友”...
  2. Docker Gogs
  3. 机器学习特征构建_使用Streamlit构建您的基础机器学习Web应用
  4. 这些棘手的Java面试题,答案你都知道吗?
  5. python列表字典_Python常用对字典、列表的操作
  6. jquery 访问.ashx ashx取所传参数的值
  7. Python编码详解
  8. iphone 开发内存管理 心得
  9. python量化交易通达信_分享一个可以实战的量化交易策略(适用于通达信系统)...
  10. 2007年网络安全技术发展分析
  11. 马尔科夫随机场:定义、性质,最大后验概率问题,能量最小化问题
  12. 科普│串联质谱分析仪(ESI离子源)之离子阱质谱仪
  13. java浅_浅谈Java浅层复制和深层复制
  14. Linguistic Regularities in Continuous Space Word Representations
  15. 农产品区块链溯源:疫情催使下的农产品认知升级
  16. 计算机硬盘容量单位换算,为什么新硬盘容量不对是什么原因?原来是硬盘容量单位换算的问题...
  17. 我的Serverless实战—基于Serverless搭建一个简单的WordPress个人博客图文详解-JJZ
  18. 最满意的10款PC 软件分享
  19. Android源码下载教程
  20. 【深度学习小常识】什么是mAP?

热门文章

  1. 图片/容器/字体 透明度[opacity:0.4; filter:alpha(opacity=40)]
  2. ASP.NET MVC过滤器(一)
  3. LR接口测试---基于http协议之get/post
  4. POJ 2828 Buy Tickets 线段树
  5. leetcode算法题--数组中两个数的最大异或值
  6. leetcode算法题--飞机座位分配概率
  7. leetcode算法题--骑士拨号器
  8. BPEL 语言介绍和应用
  9. 【HDU4507】恨7不成妻
  10. javascript 关键字使用(break continue return) 数组 函数 数组中的冒泡排序(3分钟全部写完)...