Cod sursa(job #718945)

Utilizator andreifirstCioara Andrei Ioan andreifirst Data 21 martie 2012 11:37:30
Problema Teren Scor 80
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.55 kb
#include <fstream>
using namespace std;

ifstream f("teren.in"); ofstream g("teren.out");

int v[305][305], sp[305][305], sp2[305];
int i, j, l, n, m, k, a, b, mx;

int main(){
	f>>n>>m>>k;
	mx=0;
	for (i=1; i<=n; i++) for (j=1; j<=m; j++){
		f>>v[i][j];
		sp[i][j]=sp[i-1][j]+v[i][j];
	}
	
	for (i=1; i<=n; i++){
		for (j=i; j<=n; j++){
			a=1; 
			for (l=1; l<=m; l++){
				sp2[l]=sp2[l-1]+sp[j][l]-sp[i-1][l];
				while (sp2[l]-sp2[a-1]>k && a<=l) a++;
				if (a<=l && (j-i+1)*(l-a+1)>mx) mx=(j-i+1)*(l-a+1);
			}
		}
	}		
	g<<mx;
}