Cod sursa(job #385806)

Utilizator mihai_voiVoicescu Mihai mihai_voi Data 23 ianuarie 2010 15:27:53
Problema Teren Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.61 kb
#include<fstream.h>
int b,a[302][302],m,n,x,s,smax,i,j,k,p;
int main()
{
	ifstream f("teren.in");
	ofstream g("teren.out");
	f>>n>>m>>x;
	for(i=1;i<=n;i++)
		for(j=1;j<=m;j++)
		{
			f>>b;
			if(b==1) a[i][j]=a[i-1][j]+1;
			else a[i][j]=a[i-1][j];
		}
	for(i=1;i<=n;i++)
	{
		for(j=i;j<=n;j++)
		{
				s=0;p=1;
				for(k=1;k<=m;k++)
				{  s+=a[j][k]-a[i-1][k];
				     while(s>x&&p<=k)
					 {  s=s-(a[j][p]-a[i-1][p]);
						p++;
					 }
					
					if(p<=k)
					if((j-i+1)*(k-p+1)>smax) 
							{
								smax=(j-i+1)*(k-p+1);
							}
							
			    }
		}
	}
	g<<smax;
	return 0;
}