zoukankan      html  css  js  c++  java
  • 1142 NOJ 最大连续和

    最大连续和

    时间限制(普通/Java) : 1000 MS/ 3000 MS          运行内存限制 : 65536 KByte
    总提交 : 1127            测试通过 : 208 

    题目描述

    给出一个长度为n的序列A1A2An,求最大的连续和。要求找到1in,使得Ai+Ai+1+…+Aj尽量大。

    输入

    1行输入一个正整数nn1000),此后输入n行,每行给出一个测试用例,包含正整数mm个整数,以空格分隔各个数。

    输出

    输出n行。对于每一个测试用例,在一行输出最大的连续和。

    样例输入

    2
    3 1 -1 3
    3 1 2 3

    样例输出

    3
    6

    实现代码:

    #include<iostream>
    #include<cstring>
    #include<cstdio>
    #include<limits.h>
    using namespace std;
    int main()
    {
       // freopen("data.in","r",stdin);
        int t;
        scanf("%d",&t);
        while(t--)
        {
            int n;
            scanf("%d",&n);
            int *num=new int[n+2];
            for(int i=1;i<=n;i++)
                scanf("%d",&num[i]);
            int sum=0,max=INT_MIN;//因为可能都是负数,所以设置初始max尽可能的小
            for(int i=1;i<=n;i++)
            {
                if(sum>=0)
                    sum+=num[i];//如果之前的和大于等于0,继续加
                else
                {
                    sum=num[i];//否则,舍弃前面所有的数据,从这一项开始
                }
                if(sum>max)
                {
                    max=sum;
                }
            }
            printf("%d
    ",max);
        }
        return 0;
    }
    
    杭电1003的改编题~代码改改就行了~

    版权声明:本文为博主原创文章,未经博主允许不得转载。

  • 相关阅读:
    卡特兰数
    hdu 1023 Train Problem II
    hdu 1022 Train Problem
    hdu 1021 Fibonacci Again 找规律
    java大数模板
    gcd
    object dection资源
    Rich feature hierarchies for accurate object detection and semantic segmentation(RCNN)
    softmax sigmoid
    凸优化
  • 原文地址:https://www.cnblogs.com/Tobyuyu/p/4965558.html
Copyright © 2011-2022 走看看