UVa:108 Maximum Sum

来源:互联网 发布:android 系统优化 编辑:程序博客网 时间:2024/04/28 13:55
#include<iostream>using namespace std;int main(){   int n;   while(cin>>n)  {    int a[110][110]={0};    int s[110][110]={0};    for(int i=1;i<=n;i++)     for(int j=1;j<=n;j++)      cin>>a[i][j];    for(int i=1;i<=n;i++)     for(int x=1;x<=n;x++)     s[x][i]=s[x][i-1]+a[x][i];     int max=a[1][1];    for(int i=1;i<=n;i++)     for(int j=i;j<=n;j++)     {      int sum=0;      for(int k=1;k<=n;k++)    {        sum+=s[k][j]-s[k][i-1];        if(sum>max) max=sum;        if(sum<0) sum=0;    }     }    cout<<max<<endl;  }  return 0;}


 

原创粉丝点击