Cod sursa(job #497494)

Utilizator vladstoickvladstoick vladstoick Data 2 noiembrie 2010 17:49:40
Problema Teren Scor 80
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.62 kb
#include<fstream>
using namespace std;
long sum[301][301],a[301][301],n,i,j,sc,m,amax=0,cd,x,su;
int main()
{
	long j1,j2;
	ifstream in("teren.in");
	ofstream out("teren.out");
	in>>n>>m>>x;
	for(i=1;i<=n;i++)
		for(j=1;j<=m;j++)
		{
			in>>a[i][j];
			sum[i][j]=a[i][j]+sum[i][j-1];
		}
	for(j1=1;j1<=m;j1++)
		for(j2=j1;j2<=m;j2++)
		{
			j=0;cd=0;
			for(i=1;i<=n;i++)
			{
				if(i!=1)
				{
					cd=cd-(sum[i-1][j2]-sum[i-1][j1-1]);
				}
				while( j<=n && cd<=x )
				{
					j++;
					cd+=sum[j][j2]-sum[j][j1-1];
				}
				if((j-i)*(j2-j1+1)>amax)
					amax=(j-i)*(j2-j1+1);
			}
		}
	out<<amax;
	return 0;
}