题目描述
777.字符串乘方
方法1(k总)
C++ 代码
#include<iostream>
using namespace std;
int main(){
string str;
while(cin>>str,str!="."){
int len=str.size();
for(int n=len;n;n--){
if(len%n==0){
//n是len的约数,n段
int m=len/n;
string s=str.substr(0,m);//得到第一段m个字符
string r;
for(int i=0;i<n;i++)
r+=s;
//比较自己拼接的字符串和原字符串是否相等
if(r==str){
cout<<n<<endl;
break;
}
}
}
}
return 0;
}