线段树每个区间维护上下界以及要整体增加的标记即可,时间复杂度$O(m\log n)$。

#include<cstdio>
#define inf 1500000000
int n,m,op,c,d,p;
struct Node{int l,r,t;}T[1050000];
inline void read(int&a){char c;bool f=0;a=0;while(!((((c=getchar())>='0')&&(c<='9'))||(c=='-')));if(c!='-')a=c-'0';else f=1;while(((c=getchar())>='0')&&(c<='9'))(a*=10)+=c-'0';if(f)a=-a;
}
inline int min(int a,int b){return a<b?a:b;}
inline int max(int a,int b){return a>b?a:b;}
inline void up(int x){T[x].l=min(T[x<<1].l,T[x<<1|1].l);T[x].r=max(T[x<<1].r,T[x<<1|1].r);
}
void build(int x,int a,int b){if(a==b){read(T[x].l),T[x].r=T[x].l;return;}int mid=(a+b)>>1;build(x<<1,a,mid),build(x<<1|1,mid+1,b),up(x);
}
inline void add1(int x,int p){T[x].l+=p,T[x].r+=p,T[x].t+=p;}
inline void make(int x,int l,int r){T[x].l=min(max(T[x].l,l),r);T[x].r=min(max(T[x].r,l),r);
}
inline void pb(int x){if(T[x].t)add1(x<<1,T[x].t),add1(x<<1|1,T[x].t),T[x].t=0;make(x<<1,T[x].l,T[x].r),make(x<<1|1,T[x].l,T[x].r);
}
void add(int x,int a,int b){if(c<=a&&b<=d){add1(x,p);return;}pb(x);int mid=(a+b)>>1;if(c<=mid)add(x<<1,a,mid);if(d>mid)add(x<<1|1,mid+1,b);up(x);
}
void change(int x,int a,int b,int l,int r){if(c<=a&&b<=d){make(x,l,r);return;}pb(x);int mid=(a+b)>>1;if(c<=mid)change(x<<1,a,mid,l,r);if(d>mid)change(x<<1|1,mid+1,b,l,r);up(x);
}
int ask(int x,int a,int b){if(c<=a&&b<=d)return T[x].r;pb(x);int mid=(a+b)>>1,t=-inf;if(c<=mid)t=ask(x<<1,a,mid);if(d>mid)t=max(t,ask(x<<1|1,mid+1,b));return up(x),t;
}
int main(){read(n),read(m),build(1,1,n);while(m--){read(op),read(c),read(d);if(op==4){printf("%d\n",ask(1,1,n));continue;}read(p);if(op==1)add(1,1,n);if(op==2)change(1,1,n,-inf,p);if(op==3)change(1,1,n,p,inf);}return 0;
}

  

BZOJ4280 : [ONTAK2015]Stumilowy sad相关推荐

  1. SAD和SATD的区别[摘]

    Q:如果不用率失真最优化,为什么选择SATD+delta×r(mv,mode)作为模式选择的依据?为什么运动估计中,整象素搜索用SAD,而亚象素用SATD?为什么帧内模式选择要用SATD? SAD即绝 ...

  2. 立体匹配成像算法BM,SGBM,GC,SAD一览

    本文转自|新机器视觉 在深度相机的主流技术方案Structure Light,ToF,Stereo Dual)中,主动双目成像方案可以基于低成本的硬件,获得高分辨率.高精度的深度图像,但是立体匹配算法 ...

  3. satd残差_RDO、SAD、SATD、λ(转贴) - [h.264]

    经常有人问我这方面的问题,今天总结归纳一下. 众所周知,评价编码效率的有两大指标:码率和PSNR.码流越小,则压缩率越大:PSNR越大,重建图像越好.在模式选择的时候,判别公式实质上也就是对二者的综合 ...

  4. Codeforces 955C Sad powers(数论)

    Codeforces 955C Sad powers 题意 q组询问,每次询问给定L,R,求[L,R]区间内有多少个数可以写成ap的形式,其中a>0,p>1,1 ≤ L ≤ R ≤ 1e1 ...

  5. SAD立体匹配算法在opencv中的实现

    FROM:http://blog.csdn.net/tulun/article/details/6456188 SAD算法具体原理见相关图像处理书籍. 该程序是opencv中文论坛的牛人贡献的,感谢他 ...

  6. 基于灰度的模板匹配算法(一):MAD、SAD、SSD、MSD、NCC、SSDA算法

    简介: 本文主要介绍几种基于灰度的图像匹配算法:平均绝对差算法(MAD).绝对误差和算法(SAD).误差平方和算法(SSD).平均误差平方和算法(MSD).归一化积相关算法(NCC).序贯相似性算法( ...

  7. Sad Angel (悲伤的天使)-Игорь Крутой

    悲伤的天使(neyanbhbin) -经典作曲Sad Angel( Печальныйангел) 生活是一种连续的影响,每个小人物都有小人物的伟大故事.从开头的情侣,到美丽的丝带,从清洁老伯到卖气球 ...

  8. satd残差_RDO、SAD、SATD、λ相关概念【转】

    率失真优化概述: 率失真优化(Rate D isto r t i on Op t i m ized)策略是在率失真理论[3 ]的基础上提出的一种代价函数方案, RDO 的主要思想是, 在计算代价函数时 ...

  9. 哈达玛变换的应用SATD、SAD等匹配算法

    参考:新一代高效视频编码 H.265/HEVC:原理.标准与实现. 转载:http://xiyou07127.blog.163.com/blog/static/11349879220125241070 ...

最新文章

  1. Java多线程复习:3(在操作系统中查看和杀死进程线程)
  2. Tidio AI 趋势报告:约42%受访者能够接受机器人伴侣
  3. 【目录】 软件测试全栈需要学习什么? 软件测试的各个阶段 ,软件测试学习路径,软件测试方向选择,软件测试的薪资待遇。...
  4. 东莞厚街工业机器人展会_工业机器人四大家族齐聚!东莞将在12月举办智博会...
  5. Dell Fluid FS 集群NAS系统在4K非编环境的卓越表现
  6. java一维数组插入元素_Java 数组 之 一维数组 追加 元素
  7. 无锁数据结构三:无锁数据结构的两大问题
  8. 谈论AI之前,你搞懂人类了吗?(颠覆认知)
  9. BZOJ5300 [Cqoi2018]九连环 【数学】【FFT】
  10. 会议管理SaaS平台Social Tables融资1300万美元
  11. eclipse jdk配置_第一节:学会Java前提-手把手教你配置JDK环境变量
  12. 入门 Angular 2 杂记
  13. 个人的Directx9研究总结 (1)
  14. 计算机毕业设计asp.net家庭个人理财系统(源码+系统+mysql数据库+Lw文档)
  15. 深入浅出node.js第9章玩转进程摘录
  16. 大陆车牌识别算法的背景与技术
  17. filco蓝牙不好用_FILCO蓝牙机械键盘,超稳连接6米开外不掉线
  18. html a标签属性 rel=‘nofollow‘
  19. 办公计算机锁屏方法,电脑快速锁屏,办公室神技能,再也不怕别人看我的电脑了!...
  20. android短信接收流程

热门文章

  1. 从电影死亡笔记看商业智能在治安领域的应用
  2. Django REST framework的一些奇巧淫技(干货!!!)
  3. Centos6.8 搭建Tomcat服务器
  4. react进阶系列 - 高阶组件详解四:高阶组件的嵌套使用
  5. 可持久化数据结构讲解
  6. HTTP Server开发相关学习资料整理推介
  7. 最古老的100个.com域名
  8. Python中通过lambda抛异常的奇技淫巧
  9. 【跃迁之路】【578天】程序员高效学习方法论探索系列(实验阶段335-2018.09.06)...
  10. Jira接入钉钉机器人