Cod sursa(job #1486402)
| Utilizator | Data | 14 septembrie 2015 20:01:51 | |
|---|---|---|---|
| Problema | PScPld | Scor | 30 |
| Compilator | cpp | Status | done |
| Runda | Arhiva de probleme | Marime | 0.6 kb |
#include <fstream>
#include <cstring>
#define nMax 1000000
using namespace std;
ifstream x ("pscpld.in");
ofstream y ("pscpld.out");
int n,nr;
char a[nMax];
void check_for_palindrom(int l, int r)
{
nr++;
l--;
r++;
if(a[l]==a[r])
check_for_palindrom(l,r);
}
int main()
{
int i;
x>>a;
nr=n=strlen(a);
for(i=1;i<n;i++)
if(a[i]==a[i-1])
check_for_palindrom(i-1,i);
for(i=1;i<n-1;i++)
if(a[i-1]==a[i+1])
check_for_palindrom(i-1,i+1);
y<<nr<<'\n';
return 0;
}
