dp+预处理

dp[i]表示第i天时的水位线有多少条,

然后你会发现这个dp是有后效性的,当第i天的m[i]>dp[i-1]时就要修改之前的dp值

因此我们预处理出每一天的至少要多少条水位线,记l[i]为多少条水位线

所以每天至少需要m[i]+1条水位线,然后我们从后往前枚举,记录now表示从后推出当前的i需要的水位线

l[i]=max(now,m[i]+1)

#include <bits/stdc++.h>
#define ll long long
using namespace std;
ll n,m[100011],dp[100011];
ll l[100011];
int main()
{scanf("%lld",&n);for (int i=1;i<=n;i++)scanf("%lld",&m[i]);ll now;now=m[n]+1;for (int i=n;i>=1;i--){now--;now=max(now,m[i]+1);l[i]=now;//同上}dp[1]=1;//第一天肯定有一条水位线for (int i=2;i<=n;i++){dp[i]=dp[i-1];dp[i]=max(dp[i],m[i]+1);dp[i]=max(dp[i],l[i]);}ll ans=0;for (int i=1;i<=n;i++)ans+=dp[i]-1-m[i];//统计水位之下的水位线printf("%lld\n",ans);
}

转载于:https://www.cnblogs.com/huangchenyan/p/11179328.html

CF957D Riverside Curio相关推荐

  1. D. Riverside Curio

    D. Riverside Curio ​ https://codeforces.com/problemset/problem/957/D Arkady decides to observe a riv ...

  2. Codeforces 924C Riverside Curio(瞎搞)

    题目链接:Riverside Curio 题意 ArkadyArkadyArkady 打算观察一条河的水位 nnn 天,每天他都在水平面处做一个标记,水的涨落不会将之前的标记冲走,每天他都会记录下严格 ...

  3. [Codeforces947D]Riverside Curio(思维)

    Description 题目链接 Solution 设S[i]表示到第i天总共S[i]几个标记, 那么满足S[i]=m[i]+d[i]+1 m[i]表示水位上的标记数,d[i]表示水位下的标记数 那么 ...

  4. CF924C Riverside Curio

    一.题目 点此看题 二.解法 玄学警告⚠,由于线上的数量是定值,转而求线的数量已推知线下数量. 设t[i]t[i]t[i]为iii时刻线的数量,d[i]d[i]d[i]为线下的数量,易知 t[i]=m ...

  5. CF 472D Riverside Curio

    一直以为是dp或者搜索之类的,搞了半天发现并不是qwq-.这道题其实应该从一个比较整体的角度来考虑, 首先,我们要最小化每天的d,因为每天的划线总数是ti=di+mi+1,因此实际上我们就是要最小化每 ...

  6. codeforces 957D Riverside Curio

    题目链接:http://codeforces.com/contest/957/problem/D 题意:有一个水池,每天的水位会上升或者下降.每天需要在水位处划一道白线来记录当天的水位,如果水位处有白 ...

  7. 【Codeforces 924C】Riverside Curio

    [链接] 我是链接,点我呀:) [题意] 题意 [题解] 设第i天总共的线数为t[i] 水平线上线数为m[i]是固定的 水平线下的线数设为d[i] 则d[i]+m[i]+1=t[i] 也就是说问题可以 ...

  8. Codeforces 题目合集+分类+代码 【Updating...】【361 in total】

    961A - Tetris                                                模拟                                      ...

  9. Curio for Mac(头脑风暴思维导图)

    Curio for Mac是一款Mac上非常好用的Mac上的头脑风暴/思维导图软件,Curio Mac具有头脑风暴跟思维导图功能,同时Curio还具有强大的项目管理功能.它可以直观地收集,并记得您的想 ...

最新文章

  1. 低压成套ggd设备详细报价
  2. html页面内容改变,但是网页内容不变
  3. C++编程练习(10)----“图的最小生成树“(Prim算法、Kruskal算法)
  4. linux内核5.3支持cpu,Linux 5.3版内核重磅发布:支持中国兆芯x86 CPU
  5. 思维导图Vue组件 mindmap
  6. mysql强制编码导出、导入数据
  7. kaldi GMM模型解码指令 gmm-latgen-faster详解
  8. 一些自己使用VS2015的心得
  9. WPF ICommandSource Implementations Leak Memory!
  10. linux渗透win7的时候显示445,Win7如何简单的关闭445端口及445端口入侵详解
  11. 数据分析师说坐飞机安全么
  12. arm开发板无法使用dns解析问题
  13. 控制贺尔碧格PRL及PIL模块式RT-PVR6系列比例放大器
  14. 单片机C语言延时程序
  15. 帧定格(用于定格画面添加字幕或者图片)
  16. 【Pygamex小游戏】抗疫情,居家乐——在家无聊来玩儿像素鸟闯关大冒险吧,猜猜你能闯到多少关?
  17. C#中隐藏的15大功能
  18. yolov5模型训练流程
  19. office plus
  20. android手机号码恢复,安卓手机通讯录怎么恢复?教你恢复小妙招

热门文章

  1. TNMT新交通排行榜
  2. ## 03. Stream流
  3. 数字逻辑电路仿真电路:与非门组成的三人表决器
  4. 卷积神经网络与神经网络,卷积神经网络基础知识
  5. PID算法控制的PWM调速
  6. DeepLearning4J入门——使用LSTM进行大盘回归
  7. H265编码视频播放器EasyPlayer.JS控制台出现VideoJS:WARN警告信息是什么原因?
  8. ARC101E - Ribbons on Tree
  9. ARC101E - Ribbons on Tree 树形DP
  10. send 和recv详解