1 solutions

  • 0
    @ 2025-11-5 15:47:58

    C++ :

    #include<stdio.h>
    int main()
    {
    	int n;
    	while(scanf("%d",&n)!=EOF)
    	{
    		int a[101][101]={0};
    		for (int i=0;i<n;i++)
    		{
    			for (int s=0;s<n;s++)
    			{
    				int k;scanf("%d",&k);
    				a[i][s+1]=a[i][s]+k;
    			}
    		}
    		int max=0;
    		for (int i=0;i<n+1;i++)
    		{
    			for (int s=i;s<n+1;s++)
    			{
    				int all=0;
    				for (int k=0;k<n;k++)
    				{
    					int tt=a[k][s]-a[k][i];
    					all+=tt;
    					if (all<0) all=0;
    					else if (all>max)  max=all;
    				}
    			}
    		}
    		printf("%d\n",max);
    	}
    	return 0;
    }
    
    • 1

    Information

    ID
    17183
    Time
    1000ms
    Memory
    128MiB
    Difficulty
    (None)
    Tags
    # Submissions
    0
    Accepted
    0
    Uploaded By