首页 > 其他 > 详细

DP 水题 HDU1003

时间:2015-09-01 21:20:03      阅读:227      评论:0      收藏:0      [点我收藏+]
技术分享
 1 #include <iostream>
 2 #include <cstdio>
 3 #include <cstring>
 4 
 5 using namespace std;
 6 
 7 long long dp[100010];
 8 int start[100010];
 9 int arr[100010];
10 
11 int main()
12 {
13     int T;
14     scanf("%d",&T);
15     for(int l=1;l<=T;l++)
16     {
17         if(l>1)
18             cout<<endl;
19         int n;
20         scanf("%d",&n);
21         for(int i=1;i<=n;i++)
22             scanf("%d",&arr[i]);
23         for(int i=1;i<=n;i++)
24             start[i]=i;
25         memset(dp,0,sizeof(dp));
26         for(int i=1;i<=n;i++)
27         {
28             if(dp[i-1]+arr[i]>(long long)arr[i])
29             {
30                 start[i]=start[i-1];
31                 dp[i]=dp[i-1]+arr[i];
32             }
33             else
34                 dp[i]=arr[i];
35         }
36         long long ans=-(1<<29);
37         int se=0;
38         for(int i=1;i<=n;i++)
39         {
40             if(dp[i]>ans)
41             {
42                 se=i;
43                 ans=dp[i];
44             }
45         }
46         cout<<"Case "<<l<<":"<<endl;
47         cout<<ans<<" "<<start[se]<<" "<<se<<endl;
48     }
49     return 0;
50 }
View Code

 

DP 水题 HDU1003

原文:http://www.cnblogs.com/wsruning/p/4776781.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!