Pagini recente » Cod sursa (job #2822310) | Cod sursa (job #538561) | Cod sursa (job #249811) | Cod sursa (job #2584193) | Cod sursa (job #2653557)
#include <bits/stdc++.h>
using namespace std;
ifstream fin("prefix.in");
ofstream fout("prefix.out");
int t;
int main()
{
fin>>t;
while(t--){
string s;
fin>>s;
int n=s.size();
vector<int> pi(n, 0);
int sol=0;
for(int i=1;i<n;++i){
int j=pi[i-1];
while(j&&s[i]!=s[j]) j=pi[j-1];
if(s[i]==s[j]) j++;
pi[i]=j;
if(pi[i]&&((i+1)%(i-pi[i]+1)==0)) sol=i+1;
}
fout<<sol<<"\n";
}
return 0;
}