zoukankan      html  css  js  c++  java
  • hdu1081

    #include<iostream>
    using namespace std;

    int GetMaxNum(int a[],int n) //求最大字段和
    {
    int i,sum=0,maxsum=0;

    maxsum|=1<<31;
    for(i=1;i<=n;i++)
    {
    sum+=a[i];
    if(sum<a[i])
    sum=a[i];
    if(maxsum<sum)
    maxsum=sum;
    }
    return maxsum;
    }

    int main()
    {
    int n,i,j,k,a;
    int s[102][102],t[102];
    int res,maxres;

    while(cin>>n)
    {
    for(i=0;i<=n;i++) //初始化,方便计算
    s[i][0]=s[0][i]=0;

    for(i=1;i<=n;i++)
    for(j=1;j<=n;j++)
    {
    cin>>a;
    s[i][j]=s[i-1][j]+a; //读入时就处理,累加每一列的和,s[i][j]表示第j列中i从第1行加到第i行的和
    }

    maxres=0;
    maxres|=1<<31; //maxres二进制最高位(符号位)置1变为负数,变为最小负数
    for(i=0;i<n;i++)
    for(j=i+1;j<=n;j++)
    {
    for(k=1;k<=n;k++)
    t[k]=s[j][k]-s[i][k]; //t[k]表示第k列中第i行到第j行的和
    res=GetMaxNum(t,n);
    if(maxres<res)
    maxres=res;
    }
    cout<<maxres<<endl;
    }
    return 0;
    }

  • 相关阅读:
    JavaSE_11_File类、递归
    JavaSE_10_IO流
    leyou_07_对数据的操作
    JavaSE_09_Map
    JavaSE_08_Collections常用功能
    java 22
    java 22
    java 22
    java 22
    java 22
  • 原文地址:https://www.cnblogs.com/wangkun1993/p/6341650.html
Copyright © 2011-2022 走看看