Cod sursa(job #361257)

Utilizator Adela_BaciuAdela Baciu Adela_Baciu Data 4 noiembrie 2009 12:24:51
Problema Orase Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.62 kb
#include<cstdio>
const int MAXINT=1<<30;
int sum,x,n,i,j,i1,i2,j1,j2,max,s[105][105],v[105];
int main()
{
	freopen("joctv.in","r",stdin);
	freopen("joctv.out","w",stdout);
	scanf("%d",&n);
	for(i=1;i<=n;i++)
	{
		for(j=1;j<=n;j++)
		{
			scanf("%d",&x);
			s[i][j]=s[i][j-1]+x;
		}
	}
	max=-MAXINT;
	for(j1=1;j1<=n;j1++)
		for(j2=j1;j2<=n;j2++)
		{
			for(i=1;i<=n;i++)
				v[i]=s[i][j2]-s[i][j1-1];
			sum=v[1];
			if(sum>max)
				max=sum;
			for(i=2;i<=n;++i)
			{
				sum+=v[i];	
				if(sum>max)
					max=sum;
				if(sum<0)
				{
					sum=0;
				}	
			}
		}


	printf("%d",max);
	return 0;
}