Max Sum(dp)

  经典DP啊!!dp的力量啊,,30Ms~~~~秒过。。。。。

 1 #include<stdio.h>
 2 
 3 int main ()
 4 {   int T,a,n,x,y;
 5     while(scanf("%d",&T)!=EOF)
 6     {
 7         for(int ca=1;ca<=T;ca++)
 8         {
 9             scanf("%d",&n);
10             int strt=1,end=1,max=-11111,sum=0;
11             for(int i=1;i<=n;i++)
12             {
13                scanf("%d",&a);
14                sum+=a;
15                if(sum>max){max=sum;x=strt;y=end;}
16                if(sum>=0)
17                      end+=1; 
18                if(sum<0)
19                {
20                      strt=i+1;
21                      end=i+1;
22                      sum=0;
23                }
24             }
25             printf("Case %d:\n",ca);
26             printf("%d %d %d\n",max,x,y);
27             if(ca!=T)printf("\n");
28         }
29     }
30 }

 

转载于:https://www.cnblogs.com/ace-top/p/3279583.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值