Cod sursa(job #2460412)

Utilizator minecraft3Vintila Valentin Ioan minecraft3 Data 23 septembrie 2019 17:40:05
Problema Prefix Scor 100
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.28 kb
#include <fstream>
int t,kmp[1<<20],n,i,j;char s[1<<20];main(){std::ifstream f("prefix.in");std::ofstream o("prefix.out");f>>t;while(t--){f>>s;for(i=1,j=0;s[i];++i)if(s[i]==s[j])kmp[i]=++j;else kmp[i]=j=(s[i]==s[0]);for(j=0;i;--i)if(kmp[i-1]&&i%(i-kmp[i-1])==0){j=i;break;}o<<j<<'\n';}}