ZOJ 1074

来源:互联网 发布:web 3d引擎 python 编辑:程序博客网 时间:2024/06/03 19:16

这是一道求最大子矩阵题目,这是别人的代码,我看了好久,才明白他的思路:#include <iostream>#include <cstdio>#include <cstring>#include <algorithm>using namespace std;const int maxn=105;int a[maxn][maxn];int sum[maxn];int n;int main(){    int i,j,k,maxn;    while(cin>>n)    {        maxn=-9999999;        for(i=1; i<=n; i++)        {            for(j=1; j<=n; j++)            {                scanf("%d",&a[i][j]);            }        }        for(i=1; i<=n; i++)        {            memset(sum,0,sizeof(sum));            for(j=i; j<=n; j++)            {                for(k=1; k<=n; k++)                {                    sum[k]+=a[j][k];                }                int ans=0;                for(k=1; k<=n; k++)                {                    ans+=sum[k];                    if(ans<0)ans=0;                    else if(ans>maxn)                    {                        maxn=ans;                    }                }            }        }       cout<<maxn<<endl;    }    return 0;}


原创粉丝点击