BZOJ1355: [Baltic2009]Radio Transmission KMP
Description
Input
Output
Sample Input
cabcabca
Sample Output
HINT
对于样例,我们可以利用"abc"不断自我连接得到"abcabcabc",读入的cabcabca,是它的子串
Solution
对输入的串做一遍KMP,答案就是$n-nxt_n$
这个结论貌似挺容易推出来的吧
#include <bits/stdc++.h> using namespace std ; #define N 1000010 int n , m ;
int nxt[ N ] ;
char s[ N ] ; int main() {
scanf( "%d" , &n ) ;
scanf( "%s" , s + ) ;
int k = ;
for( int i = ; i <= n ; i ++ ) {
while( s[ k + ] != s[ i ] && k ) k = nxt[ k ] ;
if( s[ k + ] == s[ i ] ) k ++ ;
nxt[ i ] = k ;
}
printf( "%d\n" , n - nxt[ n ] ) ;
}
BZOJ1355: [Baltic2009]Radio Transmission KMP的更多相关文章
- bzoj1355: [Baltic2009]Radio Transmission
		将原串看成是循环节的后缀加上若干个循环节,那么考虑每种情况都会发现n-next[n]就是最小循环节.(一开始总输出n...然后发现build_next连调用都没有,%%% #include<cs ... 
- BZOJ 1355: [Baltic2009]Radio Transmission( kmp )
		自己YY一下可以发现answer = n - fail[ n ] ------------------------------------------------------------------ ... 
- BZOJ 1355: [Baltic2009]Radio Transmission [KMP 循环节]
		1355: [Baltic2009]Radio Transmission Time Limit: 10 Sec Memory Limit: 64 MBSubmit: 792 Solved: 535 ... 
- [KMP][BZOJ1355][Baltic2009]Radio Transmission
		题面 Description 给你一个字符串,它是由某个字符串不断自我连接形成的. 但是这个字符串是不确定的,现在只想知道它的最短长度是多少. Input 第一行给出字符串的长度,\(1 < L ... 
- 【kmp算法】bzoj1355 [Baltic2009]Radio Transmission
		引用题解:http://blog.csdn.net/wyfcyx_forever/article/details/40347425 #include<cstdio> #include< ... 
- BZOJ 1355 Baltic2009 Radio Transmission KMP算法
		标题效果:给定一个字符串,求最小周期节(不能整除) 示例Hint这是错误的忽略了就好了 环路部分应该是cab 这个称号充分利用KMP在next自然阵列,那是,n-next[n]它表示一个循环节 POJ ... 
- 1355: [Baltic2009]Radio Transmission[循环节]
		1355: [Baltic2009]Radio Transmission Time Limit: 10 Sec Memory Limit: 64 MBSubmit: 796 Solved: 538 ... 
- [Baltic2009]Radio Transmission
		bzoj 1355: [Baltic2009]Radio Transmission http://www.lydsy.com/JudgeOnline/problem.php?id=1355 Time ... 
- BZOJ1355:[Baltic2009]Radio Transmission
		浅谈\(KMP\):https://www.cnblogs.com/AKMer/p/10438148.html 题目传送门:https://lydsy.com/JudgeOnline/problem. ... 
随机推荐
- Servlet----------Servlet 的映射路径细节
			在使用servlet时候,有些时候都需要自己来配置web.xml文件,在配置的时候,我们可以配置多个<url-pattern></url-pattern> 比如在这里绑定了3个 ... 
- 【Python】web.py-简单轻量级网页框架python
			简单轻量级网页框架python web.py的安装 python 3.x中安装web.py 最近决定从python2.7转移到3.x上工作. 使用数据库的时候,依然选用了之前比较感兴趣的web.py ... 
- 【JS】自学
			JS自学网址: http://www.runoob.com/js/js-tutorial.html 
- SQL SERVER 聚集索引 非聚集索引 区别
			转自http://blog.csdn.net/single_wolf_wolf/article/details/52915862 一.理解索引的结构 索引在数据库中的作用类似于目录在书籍中的作用,用来 ... 
- android activity and fragment活动周期
			1.状态 /* 每个活动一共有四种状态 *:1.运行状态,就是栈顶的那个 * 2.暂停状态:就是不处于栈顶,但是依然可见,比如对话框下面的界面 * 3.停止状态:不处于栈顶,并且不可见 * 4.销毁状 ... 
- sso架构图
- [LeetCode] 496. Next Greater Element I_Easy tag: Stack
			You are given two arrays (without duplicates) nums1 and nums2 where nums1’s elements are subset of n ... 
- Floyd 判圈算法
			Floyd 判圈算法 摘自维基百科, LeetCode 上 141题 Linked List Cycle 用到这个, 觉得很有意思. 记录一下. 链接: https://zh.wikipedia.or ... 
- testng入门教程9 TestNG依赖测试
			有时候,你可能需要在一个特定的顺序调用方法在测试案例,或你想分享一些数据和方法之间的状态.TestNG支持这种依赖测试方法之间的显式依赖它支持声明. TestNG允许指定依赖,无论与否: 使用属性de ... 
- Vue.Js加入bootstrap及jquery,或加入其他插件vue-resource,vuex等
			.引入jquery 项目目录下输入 cnpm install jquery --save-dev 用npm下载jq依赖 若想加入其他js库,如vue-resource,执行命令cnpm in ... 
