Cod sursa(job #639814)

Utilizator lily3Moldovan Liliana lily3 Data 23 noiembrie 2011 23:25:23
Problema PalM Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.65 kb
#include<fstream>
#include<cstdio>
#include<fstream>
using namespace std;

int n,rez=0,k,d[501][501][27],i=0,j;
char a[501],b[501],x;
int main()
{
	ifstream f("palm.in");
	ofstream g("palm.out");
	while(f>>x)
		a[i++]=x;
	n=i-1;
	for(i=0;i<n;i++)
	{
		b[n-i+1]=a[i];
		d[i][i][a[i]-'a']=1;
	}
	for(i=n-1;i>=0;--i)
		for(j=i+1;j<=n;++j)
			if(a[i]==a[j])
			{
				for(k=a[i]-'a';k<26;++k)
					d[i][j][a[i]-'a']=max(d[i][j][a[i]-'a'],d[i+1][j-1][k]+2);
			}
			else
				for(k=0;k<26;++k)
					d[i][j][k]=max(d[i+1][j][k],d[i][j-1][k]);
				for(i=0;i<26;i++)
					if(rez<d[0][n][i])
						rez=d[0][n][i];
					g<<rez;
	return 0;
}