51nod-dp入门-最大子矩阵和

来源:互联网 发布:图片APP知乎 编辑:程序博客网 时间:2024/06/06 14:25

思路见51nod。

代码附上:

#include <stdio.h>#include <cstring>using namespace std;typedef long long ll;const int MAX=510;int m,n;ll a[MAX][MAX],c[MAX];int main(){  while(~scanf("%d%d",&m,&n)){    for(int i=0;i<n;i++){      for(int j=0;j<m;j++){        scanf("%I64d",&a[i][j]);      }    }    memset(c,0,sizeof(c));    ll res=0,ans=0;    for(int i=0;i<n;i++){      for(int j=i;j<n;j++){        res=0;        for(int k=0;k<m;k++){          c[k]=(j==i)?a[i][k]:c[k]+a[j][k];          if(res>0) res+=c[k];          else res=c[k];          if(res>ans) ans=res;        }      }    }    printf("%I64d\n",ans );  }  return 0;}

0 0
原创粉丝点击