E. By Elevator or Stairs?
状态转移方程:
d[i][0]=min(d[i−1][0],d[i−1][1])+a[i];d[i][0] = min(d[i - 1][0], d[i - 1][1]) + a[i];d[i][0]=min(d[i−1][0],d[i−1][1])+a[i];
d[i][1]=min(d[i−1][1],d[i−1][0]+c)+b[i];d[i][1] = min(d[i - 1][1], d[i - 1][0] + c) + b[i];d[i][1]=min(d[i−1][1],d[i−1][0]+c)+b[i];
d[i][0]表示在i−1到i时步行,到1−i的最少时间d[i][0] 表示在i-1到i时步行,到1-i的最少时间d[i][0]表示在i−1到i时步行,到1−i的最少时间
d[i][0]表示在i−1到i时坐电梯,到1−i的最少时间d[i][0] 表示在i-1到i时坐电梯,到1-i的最少时间d[i][0]表示在i−1到i时坐电梯,到1−i的最少时间
初始状态d[0][0]=0;d[0][1]=c;d[0][0] = 0 ; d[0][1] = c;d[0][0]=0;d[0][1]=c;
不坐电梯很好理解
坐电梯,最优值在上一次之前坐不坐电梯中得到,dp将转换成与前一状态有关。

#include<stdio.h>
#include<iostream>
#include<algorithm>
#include<string.h>
using namespace std;
const int maxn=2e5+10;
int a[maxn],b[maxn];
int d[maxn][2];
int main(){int n,c;scanf("%d%d",&n,&c);for(int i=1;i<=n-1;i++){scanf("%d",&a[i]);}for(int i=1;i<=n-1;i++){scanf("%d",&b[i]);}d[0][0] = 0;d[0][1] = c;for (int i = 1; i < n; i++) {d[i][0] = min(d[i - 1][0], d[i - 1][1]) + a[i];d[i][1] = min(d[i - 1][1], d[i - 1][0] + c) + b[i];}for(int i=0;i<n;i++)    cout<<min(d[i][0],d[i][1])<<" ";cout<<endl;return 0;
}

Cf#595 (Div. 3)E-DP题相关推荐

  1. CF#764(div.3A~D)dp进阶

    CF#764(div.3A~D)&&dp进阶 CF#764(div.3) Problem - A - Codeforces 题意 一个数列,每次操作可以使这个数列中的任何数加1,问最少 ...

  2. Codeforces Round #595 (Div. 3) F. Maximum Weight Subset 树形dp

    传送门 文章目录 题意: 思路: 题意: n≤200n\le200n≤200 思路: 明显的树形dpdpdp,所以考虑一下dpdpdp状态. 这个题状态挺神的..可能是因为我太菜了,看了半天才看懂. ...

  3. CF #683 div.2

    CF #683 div.2 目前 ABCD A. Add Candies B. Numbers Box C. Knapsack D. Catching Cheaters 结尾 A. Add Candi ...

  4. CF#320 Div.2 总结

    比赛网址:cf#320 Div.2 晚上11点开始的比赛,持续2个半小时.结束时有两道题题过了预测数据,分时是A题和C题. 比赛开始的时候,理所当然地从A题开始看起.A题比较容易,稍微分析一下就可以看 ...

  5. CF #366(div.2) C 模拟,思维

    CF #366(div.2)  C.  Thor 题意:一个手机n个联系人,有q个操作.每次给出ty和ai,如ty==1,表示收到ai的一条信息:如ty==2,表示将ai发的信息都看掉:如ty==3, ...

  6. CF #764 Div.3(B ~D)

    CF #764 Div.3 B题 Make AP 给定a b c 使其中一个数 乘 任意正整数m 问是否能构成成差数列 我们可以想到等差数列的性质 2b=a+c2b = a + c 2b=a+c 思路 ...

  7. cf #825 Div.2(A~C2)

    Cf #825 Div.2 文章目录 Cf #825 Div.2 [A. Make A Equal to B](https://codeforces.com/contest/1736/problem/ ...

  8. poj2479与poj2593 , 同一道DP题

    Description Give you N integers a1, a2 ... aN (|ai| <=1000, 1 <= i <= N).  You should outpu ...

  9. Codeforces Round #701 (Div. 2)赛后补题报告(A~D)

    Codeforces Round #701 (Div. 2)赛后补题报告(A~D) A. Add and Divide 原题信息 http://codeforces.com/contest/1485/ ...

  10. CF #371 (Div. 2) C、map标记

    1.CF #371 (Div. 2)   C. Sonya and Queries  map应用,也可用trie 2.总结:一开始直接用数组遍历,果断T了一发 题意:t个数,奇变1,偶变0,然后与问的 ...

最新文章

  1. 内存和外存的主要区别_内存与外存的关键区别有哪些?
  2. python资料免费-MicroPython最全资料免费获取
  3. BERT在多模态领域中的应用
  4. 如何在SAP云平台的Cloud Foundry环境下添加新的Service(服务)
  5. Python抽象类介绍
  6. php控制台脚本错误输出到php_errors.log
  7. Liunx静态库和动态库
  8. CSDN博客停用公告
  9. Nissi商城序章(一):项目概述及架构
  10. 【CyberSecurityLearning 66】提权
  11. linux 云锁 端口,问一下,云锁安装后还可以修改端口吗?
  12. 关于开源软件开发的若干问题
  13. 招聘:赴微软工作SharePoint技术专家(V-,北京)
  14. C语言:求一个四位数的个位、十位、百位、千位分别为多少
  15. Xposed学习笔记之蚂蚁森林能量自动收取模块
  16. linux音源管理 二维表,Oracle【二维表管理:约束】
  17. 怎么样把计算机桌面的图标改小,怎样将电脑桌面图标变小_三招搞定桌面图标太小问题-系统城...
  18. mysql 斯文克斯_14、mysql数据库基础
  19. greasemonkey入门
  20. 陀螺专访 | 臻久网CEO庞剑飞:区块链赋能,数字酒证为白酒行业树立创新榜样...

热门文章

  1. 阅读《原则》有感之工作原则
  2. 软件开发方法 --- 结构化方法
  3. 基于神经网络的系统辨识,神经网络的种类和特点
  4. iOS屏幕旋转与锁屏
  5. 固态硬盘用软件测试掉速严重,固态硬盘掉速别慌张,教你如何快速进行调节!...
  6. html 强制复制粘贴,强制复制粘贴神器一键复制粘贴文本教程
  7. 12个免费矢量免抠素材网站
  8. spss实现中心化处理、标准化处理和归一化处理
  9. 如何在CAD编辑软件中画椭圆
  10. B站下载视频之you-get的使用