码迷,mamicode.com
首页 > 其他好文 > 详细

Bucharest, Romania 2013 G Points DP

时间:2014-08-16 23:49:31      阅读:272      评论:0      收藏:0      [点我收藏+]

标签:style   blog   http   color   os   io   for   ar   

题意:一条线上面有n个目标,每个目标有三个值,表示不取相邻的,取一个相邻的,取两个相邻的值,问你怎么选才能最大

解题思路:每个点有个5种情况dp,dp状态转移方程在程序里,

5种情况分别是 1) 不取  2) 取自己 3) 取自己和左边,4)取自己和右边,5)取自己和左右边

解题代码:

bubuko.com,布布扣
 1 Name: 12901.cpp
 2 // Author: darkdream
 3 // Created Time: 2014年08月16日 星期六 14时18分16秒
 4 
 5 #include<vector>
 6 #include<list>
 7 #include<map>
 8 #include<set>
 9 #include<deque>
10 #include<stack>
11 #include<bitset>
12 #include<algorithm>
13 #include<functional>
14 #include<numeric>
15 #include<utility>
16 #include<sstream>
17 #include<iostream>
18 #include<iomanip>
19 #include<cstdio>
20 #include<cmath>
21 #include<cstdlib>
22 #include<cstring>
23 #include<ctime>
24 #define LL long long
25 
26 using namespace std;
27 int dp[1000005][5];
28 int a[3];
29 int max3(int x, int y,int z)
30 {
31     if(y > x )
32         x = y ;
33     if(z > x )
34         x = z ; 
35     return x;
36 }
37 int main(){
38     int n ;
39     while(scanf("%d",&n)!= EOF)
40     {
41         int ans = 0 ;
42         memset(dp,0,sizeof(dp));
43         for(int i =1 ;i <= n;i ++)
44         {
45             scanf("%d %d %d",&a[0],&a[1],&a[2]); 
46             dp[i][0] = max3(dp[i-1][0],dp[i-1][1],dp[i-1][2]); 
47             dp[i][1] = dp[i-1][0] + a[0];
48             if(i != 1)
49                 dp[i][2] = a[1] + max(dp[i-1][3],dp[i-1][4]);
50             if(i != n)
51             { 
52                 dp[i][3] = a[1] + dp[i-1][0];
53                 if(i !=1)
54                   dp[i][4] = a[2] + max(dp[i-1][3],dp[i-1][4]); 
55             }
56             for(int j = 0;j <= 4;j ++)
57             { 
58                 //if(dp[i][j]  > ans)
59                 //    printf("%d %d %d\n",i,j,dp[i][j]);
60                 ans = max(dp[i][j],ans);
61             }
62         }
63         printf("%d\n",ans);
64     }
65     return 0;
66 }
View Code

 

Bucharest, Romania 2013 G Points DP,布布扣,bubuko.com

Bucharest, Romania 2013 G Points DP

标签:style   blog   http   color   os   io   for   ar   

原文地址:http://www.cnblogs.com/zyue/p/3917062.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!