Codeforces Round #208 (Div. 2)D. Dima and Hares
原题连接:http://codeforces.com/contest/358/problem/D
题目大意:有n个兔子排成一排,给第i个兔子喂食后,在其左右两只兔子均未被喂食是获得ai的愉悦值,有一个被喂食后获得bi的愉悦值,两只都被喂食过会获得ci的愉悦值,求喂过所有的兔子后获得的最大愉悦值。
解题思路:可以采用dp思想
dp[i][0]表示第i个兔子比第i-1个兔子后喂食,前i-1个兔子获得的最大愉悦值
dp[i][1]表示第i个兔子比第i-1个兔子先喂食,前i-1个兔子获得的最大愉悦值
cst[k][i]表示输入矩阵的第k行,对应的收益值,具体背景参考题目描述。
转移方程: 分别考虑i-1比i-2是先喂还是后喂
dp[i][0]= max(dp[i-1][0]+joy[1][i-1],dp[i-1][1]+joy[0][i-1]);
dp[i][1]= max(dp[i-1][0]+joy[2][i-1],dp[i-1][1]+joy[1][i-1]);
边界条件:(边界条件可以放入转移方程中,参考代码)
dp[1][0]=cst[0][0]; 1比0后喂,考虑0的收益。
dp[1][1]=cst[1][0]; 1比0先喂,考虑0的收益。
思路来源:https://blog.csdn.net/kevinkitty_love/article/details/14002835
1 #include<iostream> 2 #include<cstdio> 3 #include<cstring> 4 #include<string> 5 #include<algorithm> 6 #include<vector> 7 #include<queue> 8 #include<stack> 9 #include<map> 10 #include<set> 11 #include<cmath> 12 using namespace std; 13 #define ll long long 14 #define ull unsigned long long 15 #define ldb long double 16 #define db double 17 #define fi first 18 #define se second 19 #define INF 0x3f3f3f3f 20 #define endl "\n" 21 #define rush() int T;cin>>T;while(T--) 22 #define mem(a,b) memset((a),(b),sizeof(a)) 23 const db pi = acos((db)-1); 24 const ll MAXN = 3000; 25 const ll mod = 1e9+7; 26 27 int dp[MAXN+2][2]; 28 int joy[3][MAXN+2]; 29 30 int main() 31 { 32 int n; 33 scanf("%d",&n); 34 for(int j=0;j<3;j++) 35 { 36 for(int i=0;i<n;i++) 37 { 38 scanf("%d",&joy[j][i]); 39 } 40 } 41 42 dp[0][0]=-INF; 43 dp[0][1]=0; 44 45 for(int i=1;i<=n;i++) 46 { 47 dp[i][0]= max(dp[i-1][0]+joy[1][i-1],dp[i-1][1]+joy[0][i-1]); 48 dp[i][1]= max(dp[i-1][0]+joy[2][i-1],dp[i-1][1]+joy[1][i-1]); 49 } 50 51 printf("%d\n",dp[n][0]); 52 53 return 0; 54 }
转载于:https://www.cnblogs.com/Ogreee/p/10927713.html
Codeforces Round #208 (Div. 2)D. Dima and Hares相关推荐
- Codeforces Round #167 (Div. 1) C. Dima and Horses(BFS+贪心)
题目大意 有 n(1≤n≤3*105) 匹马,每条马都有几个敌人(不超过 3 个),现在要求把这些马分成两部分(允许一部分中没有一条马),使得对于每条马,和它在同一部分中的敌人的数量不超过1个 给出了 ...
- Codeforces Round #506 (Div. 3)
Codeforces Round #506 (Div. 3) 实习期间事不多,对div3 面向题解和数据编程了一波 A. Many Equal Substrings 题目链接 A题就是找后缀和前缀重合 ...
- Codeforces Round #563 (Div. 2)/CF1174
Codeforces Round #563 (Div. 2)/CF1174 CF1174A Ehab Fails to Be Thanos 其实就是要\(\sum\limits_{i=1}^n a_i ...
- 构造 Codeforces Round #302 (Div. 2) B Sea and Islands
题目传送门 1 /* 2 题意:在n^n的海洋里是否有k块陆地 3 构造算法:按奇偶性来判断,k小于等于所有点数的一半,交叉输出L/S 4 输出完k个L后,之后全部输出S:) 5 5 10 的例子可以 ...
- Codeforces Round #696 (Div. 2) (A ~ E)超高质量题解(每日训练 Day.16 )
整理的算法模板合集: ACM模板 点我看算法全家桶系列!!! 实际上是一个全新的精炼模板整合计划 Codeforces Round #696 (Div. 2) (A ~ E)超高质量题解 比赛链接:h ...
- Codeforces Round #712 Div.2(A ~ F) 超高质量题解(每日训练 Day.15 )
整理的算法模板合集: ACM模板 点我看算法全家桶系列!!! 实际上是一个全新的精炼模板整合计划 Codeforces Round #712 Div.2(A ~ F) 题解 比赛链接:https:// ...
- Codeforces Round #701 (Div. 2) A ~ F ,6题全,超高质量良心题解【每日亿题】2021/2/13
整理的算法模板合集: ACM模板 点我看算法全家桶系列!!! 实际上是一个全新的精炼模板整合计划 目录 A - Add and Divide B - Replace and Keep Sorted C ...
- Codeforces Round #700 (Div. 2) D2 Painting the Array II(最通俗易懂的贪心策略讲解)看不懂来打我 ~
整理的算法模板合集: ACM模板 点我看算法全家桶系列!!! 实际上是一个全新的精炼模板整合计划 整场比赛的A ~ E 6题全,全部题目超高质量题解链接: Codeforces Round #700 ...
- Codeforces Round #699 (Div. 2) F - AB Tree(贪心、树上DP)超级清晰,良心题解,看不懂来打我 ~
整理的算法模板合集: ACM模板 点我看算法全家桶系列!!! 实际上是一个全新的精炼模板整合计划 Codeforces Round #699 (Div. 2) F - AB Tree Problem ...
最新文章
- TA 们放肆摇晃的青春尾巴
- python自学路线-各个阶段的python学习路线?
- 数据结构(严蔚敏)之六——链式队列c语言实现
- 【前端5】vue:实例,插值表达式,v-,组件
- python hadoop streaming_Hadoop Streaming 使用及参数设置
- 摩托罗拉里程碑升级Android 2.2刷机知识
- 奇异值分解(SVD)和最小二乘解在解齐次线性超定方程中的应用
- Mac(OS X)下的环境变量配置不生效解决办法
- 用Aria2来替换迅雷
- 搭建自己的以图搜图系统 (一):10 行代码以图搜图
- YNWA,同样是我们普通人的鞭策
- 官网下载VMware Workstation Player 16、15、14
- MATLAB图像处理—imfindcircles的输出变量含义
- Linux_03_文档内容相关命令
- java 判断日期是同一天_java判断两个日期是否同一天的方法
- 一个网络请求的冒险之旅
- VC驿站黑客编程(关机,重启,注销)
- 【Python】pdf文件逐页转图片/修改图片存储大小脚本
- CPU被挖矿了,却找不到哪个进程!
- 大数据开发工程师基本功修炼之史上最全Linux学习笔记(建议)
热门文章
- MySQL--数据库基础
- fcntl函数-文件控制函数
- STM32F103系列单片机学习笔记1方便以后查看
- 为什么百度网盘显示2055G下载时却显示容量不足
- request.getParameter(xxxx)获取不到值的一个原因
- PIC中的#pragma idata 和#pragma udata
- Android Zygote分析
- Go从入门到精通(一)go语言初识
- JZOJ 5938. 【NOIP2018模拟10.30】分离计划
- JZOJ 5397. 【NOIP2017提高A组模拟10.6】Biology