Cod sursa(job #1068648)

Utilizator RaduGabriel2012Dinu Radu RaduGabriel2012 Data 28 decembrie 2013 16:06:21
Problema PScPld Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.56 kb
#include <iostream>
#include <fstream>
#include <cstring>
#define vmax 1000005
using namespace std;
ifstream f("pscpld.in");
ofstream g("pscpld.out");
 char s[vmax];
 int sol[vmax<<1],len,m,st,dr,res=0;

int main()
{ int i,m1,m2;
    f.read(s,vmax);
     len=(strlen(s)-2)*2;

     for(i=0;i<len;i+=2)
      {sol[i]=1; res++;}

    st=0; dr=len/2-1;

   for(i=0;i<len;i++)
   { m=i/2;
      m1=m+i%2; m2=m;

       while(m1-1>=st && m2+1<=dr && s[m1-1]==s[m2+1])
         {res++; sol[i]+=2; m1--; m2++;}
    }
     g<<res;
    return 0;
}