Cod sursa(job #775932)

Utilizator nrpcCiprian Stirbu nrpc Data 9 august 2012 12:45:03
Problema PalM Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.73 kb
#include<cstdio>
using namespace std;
char v[501];
int main()
{
	freopen("palm.in","r",stdin);
	freopen("palm.out","w",stdout);
	int n,k,max=0,p,ok,u,q;
	char c1,c2;
	scanf("%c",&c1);
	while(!feof(stdin)&&c1!='\n')
	{
		q=1;
		u=0;
		k=1;
		ok=1;
		v[1]=c1;
		scanf("%c",&c2);
		while(c1<=c2&&!feof(stdin)&&c1!='\n'){c1=c2;scanf("%c",&c2);k++;v[k]=c1;u=1;if(c1==c2)q++;else q=1;if(q>max)max=q;}
		p=k;
		while(v[p]==v[p-1])p--;
		p--;
		q=1;
		while(c1>=c2&&u&&!feof(stdin)&&c1!='\n'){c1=c2;scanf("%c",&c2);k++;v[k]=c1;if(v[k]=v[p])p--;else ok=0;if(c1==c2)q++;else q=1;if(q>max)max=q;}
		if((k-p)/2>max&&ok)max=(k-p)/2;
		if(feof(stdin)&&p>0)ok=0;
		if(ok&&k>max)max=k;
		c1=c2;
	}
	printf("%d",max);
	return 0;
}