版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/oytf10001/article/details/88616183
循环节
问题描述
小粽今天在玩一个字符串。
最初,小粽手上有很多很多个(你可以认为是无限多个)一模一样的字符串 a
,小粽选出若干个 a 顺次拼接为一个新的字符串 b
。
由于小粽犯了粗心,她把最初的 a
搞丢了,并且 b 的末尾也丢失了一些字符,只剩下了一个 b 的前缀 c
。
小粽很伤心,为了安慰她,请帮她计算可能的 a
的最短长度是多少。
输入格式
第一行一个正整数 n
,表示 c
的长度。
第二行一行一个字符串,描述字符串 c
。
输出格式
输出一行一个整数,表示 a
的可能的最短长度。
输入样例1
8
cabcabca
输出样例1
3
样例1解释
最短的 a
为 cab。
样例2
点此下载。
数据规模及约定
对于 20%
的数据有 n≤100
;
对于 50%
的数据有 n≤6000
;
对于 70%
的数据有 n≤2×105
;
对于 100%
的数据有 1≤n≤106,并且 c
中只有小写字母。
提示
[ 猜不到结论?手动画几个找找规律呗]
为了帮助大家完成题目,我们提供了只包含了输入输出功能的程序模板,也提供了含有算法的大部分实现细节的程序。
你可以根据自己的实际情况,在这些程序的基础上进行作答,或不参考这些程序,这将与你的得分无关。
这些程序可以从【这里】下载。
特别提醒:对于 Java 语言,在提交时请删除程序中的所有中文字符,否则可能无法通过编译。