1255: 周期串
程序员文章站
2024-03-16 16:01:04
...
题目
Description
如果一个字符串可以由某个长度为k的字符串重复多次得到,我们说该串以k为同期。例如,abcabcabcabc以3为周期(注意,它也以6和12为周期)。
Input
连续输入一个长度不超过80的字符串。
Output
输出它的最小周期并换行。
Sample Input
HoHoHo
HelloHello
Sample Output
2
5
代码块
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner cn = new Scanner(System.in);
while (cn.hasNext()) {
String str = cn.next();
char[] ch = str.toCharArray();
int length = ch.length, j, k = 1;
for (int i = 0; i < length;) {
for (j = 1; j < length; j++) {
if (ch[i] == ch[j]) {
k = j - i;
i++;
} else
i = 0;
}
if(j>=length) break;
}
System.out.println(k);
}
}
}
上一篇: 数据结构和算法--------递归
下一篇: cocos2dx spine骨骼动画
推荐阅读
-
1255: 周期串
-
【数据结构与算法】06. java判断字符串是否合法(栈)
-
java中时间格式要求大小写严格 博客分类: javaString转date日期格式化 java字符串转日期日期格式化
-
每天一道LeetCode-----给定字符串s和字符数组words,在s中找到words出现的位置,words内部字符串顺序无要求
-
Javascript从零基础到精通——字符串
-
在一个字符串中找到第一个只出现一次的字符
-
在一个字符串中找到第一个只出现一次的字符 [#60]
-
在一个字符串中找到第一个只出现一次的字符。
-
给定一个字符串,在字符串中找到第一个连续出现至少k次的字符。
-
JavaScript算法系列--leetcode最长回文子串