解析

本题说明了样例的重要性
完全可以通过仔细观察样例得出一些结论

首先最大值显然就是max⁡(b1,cn)\max(b_1,c_n)max(b1​,cn​)
考虑最优策略
如果a上升了,就让b上升
因为假设前面都拼的严丝合缝了,让c上升前面全得上升,肯定会对答案有影响,而修改b则不一定

如果a下降了,就让c下降
类似的原因,如果让b下降,就会影响到b1,那么b1小了,c1就会大,对答案产生影响

想到这些,后面维护差分就较为简单了

代码

#include<bits/stdc++.h>
using namespace std;
const int N=3e5+100;
const int mod=1e9+7;
double eps=1e-10;
#define ll long long
ll read(){ll x=0,f=1;char c=getchar();while(!isdigit(c)){if(c=='-')f=-1;c=getchar();};while(isdigit(c)){x=x*10+c-'0';c=getchar();};return x*f;
}int n,m;ll d[N],a[N];
ll res;
int main(){#ifndef ONLINE_JUDGE//freopen("a.in","r",stdin);//freopen("a.out","w",stdout);#endifn=read();for(int i=1;i<=n;i++){a[i]=read();d[i]=a[i]-a[i-1];if(i>1) res+=max(0ll,d[i]);//printf("i=%d res=%lld\n",i,res);}res+=a[1];printf("%lld\n",(res+(res>=0))/2);m=read();for(int i=1;i<=m;i++){int l=read(),r=read(),x=read();if(l==1) res-=d[l];else res-=max(0ll,d[l]);d[l]+=x;if(l==1) res+=d[l];else res+=max(0ll,d[l]);//printf("d=%lld res=%lld\n",d[l],res);if(r<n){res-=max(0ll,d[r+1]);d[r+1]-=x;res+=max(0ll,d[r+1]);}printf("%lld\n",(res+(res>=0))/2);}return 0;
}
/*
2 3
7 4 9 9
1 2 8
3 1
4 2 4
*/

CF1406D:Three Sequences(贪心、构造)相关推荐

  1. 贪心+构造 Codeforces Round #277 (Div. 2) C. Palindrome Transformation

    题目传送门 1 /* 2 贪心+构造:因为是对称的,可以全都左一半考虑,过程很简单,但是能想到就很难了 3 */ 4 /**************************************** ...

  2. 2021年度训练联盟热身训练赛第五场 H题In-place Sorting+贪心构造

    题意: 给你n个小于101810^{18}1018的大数,问在可以再不改变序列位置,之改变数值中某数位的'9'变为'6'或将'6'变为'9',求的最终序列由小到大,且字典序最小. 题目: 链接:htt ...

  3. 【牛客 - 318G】LLLYYY的数字思维 与【牛客 - 289J】这是一个沙雕题II(贪心构造)

    题干: LLLYYY很喜欢写暴力模拟贪心思维.某一天在机房,他突然抛给了队友ppq一 个问题.问题如下: 有一个函数f (): int f(int x){     int tmp = 0;     w ...

  4. 常规贪心构造题 最多能完成排序的块 II

    这是 LeetCode 上的  最多能完成排序的块 II ,难度为 困难. Tag : 「贪心」 这个问题和"最多能完成排序的块"相似,但给定数组中的元素可以重复,输入数组最大长度 ...

  5. hdu 4982 贪心构造序列

    http://acm.hdu.edu.cn/showproblem.php?pid=4982 给定n和k,求一个包含k个不相同正整数的集合,要求元素之和为n,并且其中k-1的元素的和为完全平方数 枚举 ...

  6. CodeForces - 1494D Dogeforces(贪心+构造)

    题目链接:点击查看 题目大意:给出 nnn 个叶子结点和一个 n∗nn*nn∗n 的 LCALCALCA 矩阵,其中 LCALCALCA 表示的是最近公共祖先节点的权值,现在需要构造出一棵自顶向下权值 ...

  7. CodeForces - 1364C Ehab and Prefix MEX(贪心+构造)

    题目链接:点击查看 题目大意:给出一个数组 a ,要求构造一个数组 b ,使得 a[ i ] = MEX{ b[ 1 ] , b[ 2 ] , ... b[ i - 1 ] , b[ i ] },a[ ...

  8. CodeForces - 1265D Beautiful Sequence(贪心+构造+思维)

    题目链接:点击查看 题目大意:给出a个0,b个1,c个2,d个3,要求构造一种序列,使得数列两两之间绝对值之差等于1,若不能构造输出NO 题目分析:首先我们需要稍微讨论一下特殊情况,那就是对于两端的数 ...

  9. CodeForces - 1256C Platforms Jumping(贪心+构造)

    题目链接:点击查看 题目大意:现在固定人初始时在点0处,现在我们需要跨过长度为n的一条河,到达对岸的点n+1处,给出m个木板,我们可以将这m个木板随意摆放,但相对位置不能改变,并且只能互相接触而不能互 ...

  10. 【Comet OJ - Contest #5 - C】迫真小游戏(优先队列,贪心构造,树,字典序)

    题干: H君喜欢在阳台晒太阳,闲暇之余他会玩一些塔防小游戏. H君玩的小游戏可以抽象成一棵 nn 个节点的有根树,树以 11 为根,每个点的深度定义为其到根的简单路径上的点数(根的深度为 11). H ...

最新文章

  1. vm虚拟机下linux安装python_VM中安装linux系统,安装VS Code,搭建Python环境
  2. 什么是类别不平衡?有哪些解决方案?
  3. 低版本IE浏览器不支持前端代码修改属性remove()的解决办法
  4. 临近春招,Kafka是不是忘完了,给你一文概括Kafka
  5. ftp 工具_ftp工具,ftp工具有哪些
  6. [剑指offer]面试题34:丑数
  7. Spark Scalaa 几个常用的示例
  8. 13个你必须知道的JS数组技巧
  9. 警惕!这个 PowerPoint“弱点”可用于发动鼠标悬停攻击
  10. [AX]AX2012 AIF(五):使用文档服务更新数据
  11. python内嵌浏览器_内嵌web浏览器
  12. WEBRTC中VAD算法及思想的数学解析
  13. Allegro中的测试点 Test Point
  14. Ubuntu kylin优麒麟下配置Hadoop环境
  15. STM32 定时器编码器模式时,如何理解编码器计数
  16. 待我君临天下,定许你一世繁华。
  17. 订单能否按时交期?制造企业必须面对这几个问题
  18. Solidity 从入门到实战(一)
  19. 安装mysql的初始密码在哪里
  20. java调用visa的dll库,查看新闻/公告--[备忘]Java中,使用JNA调用Visa32.dll,控制频谱仪~~...

热门文章

  1. java threadsafe 注解_Java 注解详解
  2. mysql连接指定时区_MySQL创建JDBC连接时区问题
  3. 操作系统概念 ppt_智能家居操作系统三国拉锯,要出结果了吗?
  4. 求职学习笔记|并发编程知识点常见问题总结(一)
  5. 插入始终是1_插入式电磁流量计特点与应用
  6. 在linux文件共享接口,入坑Linux-day13(使用vsftpd服务传输文件、使用Samba或NFS实现文件共享)...
  7. java 最好 入门_C++和Java哪个比较好入门?初学者该如何选择?
  8. 程序显示文本框_【教程】TestComplete测试桌面应用程序教程(二)
  9. javaweb应用开发与实践pdf_基于阿里云打造「云原生」Web应用——「懒猪行」Web应用开发实践...
  10. 7-5 流水作业调度 (10 分)(思路+详解+johnson解析)Come Baby!!!!!!!!!!