BZOJ4280 : [ONTAK2015]Stumilowy sad
线段树每个区间维护上下界以及要整体增加的标记即可,时间复杂度$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相关推荐
- SAD和SATD的区别[摘]
Q:如果不用率失真最优化,为什么选择SATD+delta×r(mv,mode)作为模式选择的依据?为什么运动估计中,整象素搜索用SAD,而亚象素用SATD?为什么帧内模式选择要用SATD? SAD即绝 ...
- 立体匹配成像算法BM,SGBM,GC,SAD一览
本文转自|新机器视觉 在深度相机的主流技术方案Structure Light,ToF,Stereo Dual)中,主动双目成像方案可以基于低成本的硬件,获得高分辨率.高精度的深度图像,但是立体匹配算法 ...
- satd残差_RDO、SAD、SATD、λ(转贴) - [h.264]
经常有人问我这方面的问题,今天总结归纳一下. 众所周知,评价编码效率的有两大指标:码率和PSNR.码流越小,则压缩率越大:PSNR越大,重建图像越好.在模式选择的时候,判别公式实质上也就是对二者的综合 ...
- Codeforces 955C Sad powers(数论)
Codeforces 955C Sad powers 题意 q组询问,每次询问给定L,R,求[L,R]区间内有多少个数可以写成ap的形式,其中a>0,p>1,1 ≤ L ≤ R ≤ 1e1 ...
- SAD立体匹配算法在opencv中的实现
FROM:http://blog.csdn.net/tulun/article/details/6456188 SAD算法具体原理见相关图像处理书籍. 该程序是opencv中文论坛的牛人贡献的,感谢他 ...
- 基于灰度的模板匹配算法(一):MAD、SAD、SSD、MSD、NCC、SSDA算法
简介: 本文主要介绍几种基于灰度的图像匹配算法:平均绝对差算法(MAD).绝对误差和算法(SAD).误差平方和算法(SSD).平均误差平方和算法(MSD).归一化积相关算法(NCC).序贯相似性算法( ...
- Sad Angel (悲伤的天使)-Игорь Крутой
悲伤的天使(neyanbhbin) -经典作曲Sad Angel( Печальныйангел) 生活是一种连续的影响,每个小人物都有小人物的伟大故事.从开头的情侣,到美丽的丝带,从清洁老伯到卖气球 ...
- satd残差_RDO、SAD、SATD、λ相关概念【转】
率失真优化概述: 率失真优化(Rate D isto r t i on Op t i m ized)策略是在率失真理论[3 ]的基础上提出的一种代价函数方案, RDO 的主要思想是, 在计算代价函数时 ...
- 哈达玛变换的应用SATD、SAD等匹配算法
参考:新一代高效视频编码 H.265/HEVC:原理.标准与实现. 转载:http://xiyou07127.blog.163.com/blog/static/11349879220125241070 ...
最新文章
- Java多线程复习:3(在操作系统中查看和杀死进程线程)
- Tidio AI 趋势报告:约42%受访者能够接受机器人伴侣
- 【目录】 软件测试全栈需要学习什么? 软件测试的各个阶段 ,软件测试学习路径,软件测试方向选择,软件测试的薪资待遇。...
- 东莞厚街工业机器人展会_工业机器人四大家族齐聚!东莞将在12月举办智博会...
- Dell Fluid FS 集群NAS系统在4K非编环境的卓越表现
- java一维数组插入元素_Java 数组 之 一维数组 追加 元素
- 无锁数据结构三:无锁数据结构的两大问题
- 谈论AI之前,你搞懂人类了吗?(颠覆认知)
- BZOJ5300 [Cqoi2018]九连环 【数学】【FFT】
- 会议管理SaaS平台Social Tables融资1300万美元
- eclipse jdk配置_第一节:学会Java前提-手把手教你配置JDK环境变量
- 入门 Angular 2 杂记
- 个人的Directx9研究总结 (1)
- 计算机毕业设计asp.net家庭个人理财系统(源码+系统+mysql数据库+Lw文档)
- 深入浅出node.js第9章玩转进程摘录
- 大陆车牌识别算法的背景与技术
- filco蓝牙不好用_FILCO蓝牙机械键盘,超稳连接6米开外不掉线
- html a标签属性 rel=‘nofollow‘
- 办公计算机锁屏方法,电脑快速锁屏,办公室神技能,再也不怕别人看我的电脑了!...
- android短信接收流程
热门文章
- 从电影死亡笔记看商业智能在治安领域的应用
- Django REST framework的一些奇巧淫技(干货!!!)
- Centos6.8 搭建Tomcat服务器
- react进阶系列 - 高阶组件详解四:高阶组件的嵌套使用
- 可持久化数据结构讲解
- HTTP Server开发相关学习资料整理推介
- 最古老的100个.com域名
- Python中通过lambda抛异常的奇技淫巧
- 【跃迁之路】【578天】程序员高效学习方法论探索系列(实验阶段335-2018.09.06)...
- Jira接入钉钉机器人