zoukankan      html  css  js  c++  java
  • 5.J

    题目连接:http://acm.hust.edu.cn/vjudge/contest/126708#problem/J

    #include<iostream>
    #include<cstdio>
    using namespace std;
    int main()
    {
        int t,n,now,before,max,s,e,x,cnt=0;
        scanf("%d",&t);
        while(t--)
        {
            scanf("%d",&n);
            for(int i=1;i<=n;i++)
            {
                scanf("%d",&now);
                if(i==1)//注意是等号等号!!!不要写错
                {
                    max=before=now;
                    s=x=e=1;
                }
                else
                {
                    if(now>now+before)//如果前面的是负数就从当前开始
                    {
                        before=now;
                        x=i;
                    }
                    else before+=now;
                    if(before>max)//加了当前的值后,大于max,才更新max,保证了max 是最大值
                    {
                        max=before;
                        s=x;
                        e=i;
                    }
                }
    
            }
            printf("Case %d:
    %d %d %d
    ",++cnt,max,s,e);
                if(t) printf("
    ");
        }
        return 0;
    }
  • 相关阅读:
    Day 69
    Day 68
    Day 67
    Day 66
    Day 65
    Day 64
    Day 63
    Day 62
    Day 61
    Day 60
  • 原文地址:https://www.cnblogs.com/Twsc/p/5754067.html
Copyright © 2011-2022 走看看