Cod sursa(job #769542)

Utilizator ionut_blesneagIonut Blesneag ionut_blesneag Data 19 iulie 2012 20:03:50
Problema Prefix Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.79 kb
#include<fstream>
#include<string.h>
using namespace std;

long nr,n,i,j,k;
char c[1000001];
long onp, nnp, olp, nlp;
int wahr; 
long  length;

int main()
{
ifstream f("prefix.in");
ofstream g("prefix.out");

f>>nr;
f.get();

for(k=0; k<nr; k++)
{f.getline(c,sizeof(c));
n=strlen(c);
olp=1; onp=1;
nlp=1; nnp=1;

for(j=1; j<=n/2; j++)
   if(c[j]==c[0]&&j>=olp*onp)
     {nnp=1;   nlp=j;  wahr=1;
      while(wahr==1)
        {for(i=0;  i<nlp;  i++)
            if(c[nlp*nnp+i]!=c[i])
              {wahr=0;   break;}
         if(wahr==1)
            {nnp++;
             onp=nnp;
             olp=nlp;}
         }    
      }            
              
  
if(onp==1)
  g<<"0";
else
  {length=olp*onp;
   g<<length;}
g<<endl; 

//g<<"Das ist alles"<<endl<<endl<<endl<<endl;
}

f.close();
g.close();

return 0;}