Cod sursa(job #460531)

Utilizator aladinaladin aladinn aladin Data 2 iunie 2010 21:57:11
Problema PScPld Scor 30
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.43 kb
#include <cstdio>
#include <cstring>
char s[1000005];
int main()
{
	int n,i;
	long long nr=0;
	freopen("pscpld.in","r",stdin);
	freopen("pscpld.out","w",stdout);
	scanf("%s",s);
	n=strlen(s)-1;
	for (i=0;i<=n;++i)
	{
		int a=i-1,b=i+1;
		while ((a>=0) && (b<=n) && (s[a]==s[b]))
			--a,++b;
		nr+=i-a;
		
		a=i;b=i+1;
		while ((a>=0) && (b<=n) && (s[a]==s[b]))
			--a,++b;
		nr+=i-a;
	}
	printf("%lld",nr);
	return 0;}