1. 程式人生 > >UVA-455 利用c++ string快速解題

UVA-455 利用c++ string快速解題

main uva break 循環 return sin names index ==

int compare( size_type index, size_type length, const basic_string &str, size_type index2,size_type length2 );
  • 比較自己的子串和str的子串,其中index2和length2引用str,index和length引用自己
#include<iostream>
#include<string>

using namespace std;

int main(){
	int n;
	cin>>n;
	for(int j=0;j<n;j++){
		string a;
		cin>>a;
		int i,k;
		for(i=1;i<=a.length();i++)//i為循環節長度 
			if(a.length()%i==0){
				for(k=i;k<a.length()&&a.compare(0,i,a,k,i)==0;k+=i);
				if(k>=a.length()){
					cout<<i<<endl;
					break;
				}
			}
		if(j<n-1)cout<<endl;
	}
	return 0;
}

  

UVA-455 利用c++ string快速解題