Cod sursa(job #755766)

Utilizator svladScurtu Vlad svlad Data 6 iunie 2012 22:15:41
Problema Teren Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.64 kb
#include <fstream>
using namespace std;
int a[305][305],v[305];
int main()
{
	int n,m,X,i,j,k,max,OK,max2,st,dr,cnt,r,S=0,S2=0,b;
	ifstream f("teren.in");
	ofstream g("teren.out");
	f>>n; f>>m; f>>X; max=0;
	for(i=1;i<=n;i++)
		for(j=1;j<=m;j++)
		{	f>>b; a[i][j]=a[i-1][j]+b;}
	for(i=1;i<=n;i++)
		for(j=i;j<=n;j++)
		{	S2=0;
			for(k=1;k<=m;k++)
			{	v[k]=a[j][k]-a[i-1][k];
			}
			st=1;
			S=0; max2=0;
			for(k=1;k<=m;k++)
			{	S=S+v[k];
				if(S>X)
				{	S=S-v[st]; ++st;}
				if(k-st+1>max2)
				{	max2=k-st+1;}
			}
			if((j-i+1)*max2>max)
				max=(j-i+1)*max2;
		}
	g<<max;
	f.close();
	g.close();
	return 0;
}