Cod sursa(job #418214)

Utilizator paul_gabryelPaul Buda paul_gabryel Data 15 martie 2010 17:24:51
Problema Teren Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.61 kb
#include<cstdio>
using namespace std;
char a[301][301];
int s[301][301],n,m,x;
int main ()
{
	freopen("teren.in","r",stdin);
	scanf("%d%d%d",&n,&m,&x);
	for(int i=1;i<=n;++i)
	for(int j=1;j<=m;++j){
		int aux;
		scanf("%d",&aux);
		a[i][j]=aux;
		s[i][j]=s[i-1][j]+aux;
	}
	int v[301];
	int amax=-1;
	for(int i=1;i<=n;++i)
	for(int j=i;j<=n;++j){
		for(int k=1;k<=m;++k)
		v[k]=s[j][k]-s[i-1][k];
		int sc=0,st=1;
		for(int k=1;k<=m;++k){
			sc += v[k];
			while(sc>x)
				sc-=v[st++];
			if(amax<=(k-st+1)*(j-i+1))
			amax=(k-st+1)*(j-i+1);	
			}
		}
	freopen("teren.out","w",stdout);
	printf("%d\n",amax);
	return 0;
}