1255: 周期串

来源:互联网 发布:实体店铺装修设计软件 编辑:程序博客网 时间:2024/06/15 19:49

题目

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);        }    }}
原创粉丝点击