Pagini recente » Cod sursa (job #2074859) | Cod sursa (job #166894) | Cod sursa (job #1939694) | Cod sursa (job #2471477) | Cod sursa (job #2714468)
#include <iostream>
#include <fstream>
#include <cstring>
using namespace std;
ifstream fin("pscpld.in");
ofstream fout("pscpld.out");
char s[301];
bool d[301][301];
int n, nr, st, dr;
int main()
{
fin>>(s+1);
n=strlen(s+1);
for(int i=1; i<=n; i++)
d[i][i]=1;
nr=n;
for(int i=1; i<n; i++)
if(s[i]==s[i+1])
{
d[i][i+1]=1;
nr++;
}
for(int i=3; i<=n; i++)
for(int st=1; st<=n-i+1; st++)
{
int dr=st+i-1;
if( d[st+1][dr-1]==1 && s[st]==s[dr] )
{
d[st][st+i-1]=1;
nr++;
}
}
fout<<nr;
return 0;
}