读书人

Codeforces Beta Round #七, problem:

发布时间: 2012-09-11 10:49:03 作者: rapoo

Codeforces Beta Round #7, problem: (D) Palindrome Degree

#include<iostream>#include<cstdio>#include<cstdlib>#include<cstring>__int64 dp[5000000+5];char s[5000000+5];using namespace std;int main(void){    __int64 ans=0,l=0,r=0,k=1;    scanf("%s",s);    for(int i=0;s[i];i++)    {        l=l*33+s[i]-'a';        r=r+(s[i]-'a')*k;        k=k*33;        if(l==r)            dp[i+1]=dp[(i+1)/2]+1;        ans+=dp[i+1];    }    cout<<ans<<endl;    return 0;}


读书人网 >编程

热点推荐