即判断字符串能否用其子串连接若干次构成
import java.util.Scanner;
public class Main{
public static void main(String[] args){
Scanner sc = new Scanner(System.in);
while(true){
String str = sc.next();
if(str.equals(".")) break;
int n = str.length();
for(int i=1; i<=n; i++){//子串长度从1到n枚举
if(n%i==0){ //如果子串长度能被原串长度n整除,说明子串连接若干次可能变成原串
String s = str.substring(0,i);//从原串中截取子串
String t = "";
for(int j=0; j<n/i; j++)//连接n/i次达到n的长度
t += s;
if(t.equals(str)){ //判断连接之后与原串是否相等
System.out.println(n/i); //是则输出连接次数
break;
}
}
}
}
}
}