Submission #8843

#TimeUsernameProblemLanguageResultExecution timeMemory
8843gs13068On grid (kriii2_O)C++98
4 / 4
104 ms108320 KiB
#include<cstdio>
#include<algorithm>

int a[301][301];
int t[301][301];
int d[301][301][301];

int main()
{
	int i,j,k,l,n,m;
	scanf("%d%d",&n,&m);
    for(i=0;i<=n;i++)for(j=0;j<=m;j++)
    {
    	t[i][j]=-1e9;
    	for(k=0;k<=m;k++)d[i][j][k]=-1e9;
    }
	t[0][0]=0;
    d[0][0][0]=0;
	for(i=1;i<=n;i++)for(j=1;j<=m;j++)
	{
		scanf("%d",&a[i][j]);
        a[i][j]+=a[i-1][j]+a[i][j-1]-a[i-1][j-1];
        t[i][j]=-1e9;
        for(k=0;k<j;k++)
		{
			d[i][j][k]=std::max(d[i-1][j][k],t[i-1][k])+a[i][j]-a[i-1][j]-a[i][k]+a[i-1][k];
			t[i][j]=std::max(t[i][j],d[i][j][k]);
		}
	}
	printf("%d",t[n][m]);
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...