一、题面
二、题解
利用string的subtr()函数和find()函数简化编程,注意题面说明子串是不重叠的
三、实现代码
#include <iostream>
#include <string>
using namespace std;
int main(){
int t;
cin>>t;
while(t--){
int i,j;
int len=-1;
string s;
string tmp;
cin>>s;
i=s.size();
for(i=1;i<=(s.size()/2);i++){
for(j=0;j<=(s.size()/2);j++){
tmp=s.substr(j,i);
if(s.find(tmp,j+i)!=s.npos) len=i;
}
}
cout<<len<<endl;
}
return 0;
}