Cod sursa(job #527185)

Utilizator lianaliana tucar liana Data 30 ianuarie 2011 21:02:18
Problema Teren Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.6 kb
#include <stdio.h>
long int l1, l2, i, j, x, inc, sf, s, n, m, k, rez, sum[302][302];

int main()
{
	freopen("teren.in","r",stdin);
	freopen("teren.out","w",stdout);
	scanf("%ld %ld %ld",&n, &m, &k);
	for (i=1;i<=n;i++)
		for (j=1;j<=m;j++)
		{
			scanf("%ld",&x);
			sum[i][j]=sum[i-1][j]+x;
		}
	for (l1=1;l1<=n;l1++)
		for (l2=l1;l2<=n;l2++)
		{
			inc=1; sf=0; s=0;
			while (sf<m)
			{
				s+=sum[l2][++sf]-sum[l1-1][sf];
				while (s>k)
					s-=sum[l2][inc]-sum[l1-1][inc++];
				if ((l2-l1+1)*(sf-inc+1)>rez)
					rez=(l2-l1+1)*(sf-inc+1);
			}
		}
	printf("%ld",rez);
	return 0;
}