bzoj3932 任务查询系统
Description
Input
Output
#include<cstdio>
#include<algorithm>
typedef long long lint;
const int N=,mx=;
int m,n;
struct op{
int t,v;
bool s;
op(){}
op(int t_,int v_,bool s_):t(t_),v(v_),s(s_){}
};
bool operator<(op a,op b){
return a.t<b.t;
}
op ops[];
int opp=;
int vs[],vp=;
int lc[N],rc[N],sz[N];
lint sum[N];
int rts[];
int p=;
lint get(int w,int x,int L,int R){
//printf("g[%d,%d] x:%d\n",L,R,x);
int M=L+R>>;
if(sz[w]<=x)return sum[w];
if(L==R)return vs[L-]*1ll*x;
if(sz[lc[w]]>=x)return get(lc[w],x,L,M);
return sum[lc[w]]+get(rc[w],x-sz[lc[w]],M+,R);
}
int add(int w,int v,bool s,int x,int L,int R){
//printf("[%d,%d] v:%d s:%d x:%d\n",L,R,v,(int)s,x);
int u=p++;
if(L==R){
if(s){
sz[u]=sz[w]+;
sum[u]=sum[w]+v;
}else{
sz[u]=sz[w]-;
sum[u]=sum[w]-v;
}
lc[u]=rc[u]=;
}else{
int M=L+R>>;
if(x>M){
rc[u]=add(rc[w],v,s,x,M+,R);
lc[u]=lc[w];
}else{
lc[u]=add(lc[w],v,s,x,L,M);
rc[u]=rc[w];
}
sz[u]=sz[lc[u]]+sz[rc[u]];
sum[u]=sum[lc[u]]+sum[rc[u]];
}
return u;
}
int build(int L,int R){
int w=p++;
int M=L+R>>;
if(L<R){
lc[w]=build(L,M);
rc[w]=build(M+,R);
}
sz[w]=sum[w]=;
return w;
}
int main(){
int a,b,c,x;
lint pre=1ll;
scanf("%d%d",&m,&n);
for(int i=;i<m;i++){
scanf("%d%d%d",&a,&b,&c);
ops[opp++]=op(a,c,);
ops[opp++]=op(b+,c,);
vs[vp++]=c;
}
std::sort(ops,ops+opp);
std::sort(vs,vs+vp);
int vm=vp;vp=;
for(int i=;i<vm;i++)if(vs[i]>vs[i-])vs[vp++]=vs[i];
rts[]=build(,mx);
for(int i=,oi=;i<=n;i++){
rts[i]=rts[i-];
while(oi<opp&&ops[oi].t==i){
rts[i]=add(rts[i],ops[oi].v,ops[oi].s,std::upper_bound(vs,vs+vp,ops[oi].v)-vs,,mx);
oi++;
}
}
for(int i=;i<=n;i++){
scanf("%d%d%d%d",&x,&a,&b,&c);
pre=get(rts[x],(a*pre%c+b)%c+,,mx);
printf("%lld\n",pre);
}
return ;
}
bzoj3932 任务查询系统的更多相关文章
- 【BZOJ3932】[CQOI2015]任务查询系统 主席树
[BZOJ3932][CQOI2015]任务查询系统 Description 最近实验室正在为其管理的超级计算机编制一套任务管理系统,而你被安排完成其中的查询部分.超级计算机中的 任务用三元组(Si, ...
- BZOJ3932 CQOI2015 任务查询系统 【主席树】
BZOJ3932 CQOI2015 任务查询系统 Description 最近实验室正在为其管理的超级计算机编制一套任务管理系统,而你被安排完成其中的查询部分.超级计算机中的任务用三元组(Si,Ei, ...
- [bzoj3932][CQOI2015]任务查询系统_主席树
任务查询系统 bzoj-3932 CQOI-2015 题目大意:最近实验室正在为其管理的超级计算机编制一套任务管理系统,而你被安排完成其中的查询部分.超级计算机中的任务用三元组(Si,Ei,Pi)描述 ...
- 【BZOJ3932】任务查询系统(主席树)
[BZOJ3923]任务查询系统(主席树) 题面 Description 最近实验室正在为其管理的超级计算机编制一套任务管理系统,而你被安排完成其中的查询部分.超级计算机中的 任务用三元组(Si,Ei ...
- BZOJ3932: [CQOI2015]任务查询系统 主席树
3932: [CQOI2015]任务查询系统 Time Limit: 20 Sec Memory Limit: 512 MBSubmit: 4869 Solved: 1652[Submit][St ...
- bzoj3932 / P3168 [CQOI2015]任务查询系统(主席树+差分)
P3168 [CQOI2015]任务查询系统 看到第k小,就是主席树辣 对于每一段任务(a,b,k),在版本a的主席树+k,版本b+1的主席树-k 同一时间可能有多次修改,所以开个vector存操作, ...
- BZOJ_3932_[CQOI2015]任务查询系统_主席树
BZOJ_3932_[CQOI2015]任务查询系统_主席树 题意: 最近实验室正在为其管理的超级计算机编制一套任务管理系统,而你被安排完成其中的查询部分.超级计算机中的 任务用三元组(Si,Ei,P ...
- P3168 [CQOI2015]任务查询系统
题目地址:P3168 [CQOI2015]任务查询系统 主席树的模板题 更模板的在这儿:P3834 [模板]可持久化线段树 1(主席树) 形象的说,P3834是"单点修改,区间查询" ...
- 主席树||可持久化线段树||离散化||[CQOI2015]任务查询系统||BZOJ 3932||Luogu P3168
题目: [CQOI2015]任务查询系统 题解: 是一道很经典的题目.大体思路是抓优先级来当下标做主席树,用时刻作为主席树的版本.然而优先级范围到1e7去了,就离散化一遍.然后把每个事件的开始(s). ...
随机推荐
- 51nod1210
题解: 二维树状数组,再矩阵推一下 代码: #include<bits/stdc++.h> using namespace std; typedef long long LL; ; int ...
- python关于时间的计算,time模块
import time, datetime # time.time 返回当前时间的时间戳(1970纪元后经过的浮点秒数)(格林尼治时间). # 1分钟60秒,1小时3600秒,1天86400秒. pr ...
- (转载)hibernate缓存
目的:减少访问数据库的次数 一级缓存(默认): Session级别的缓存,一个Session做了一个查询操作,它会把这个操作的结果放在一级缓存中,如果短时间内这个session(一定要同一个sessi ...
- 基于PHP+MYSQL的WEB聊天应用雏形开发实例教程
更多技术资源:胡旭个人博客 前天,简单利用PHP做了一个简单的WEB聊天应用.没有发到网上,所以就不提供demo了.不过,发布一下源代码(见文尾). 项目说明: 基于PHP+MYSQL的WEB聊天应用 ...
- firefox下reset()不好使的问题
最近在测试项目时发现,在firefox下,form.reset()方法对于隐藏的<input>等不起效果,导致程序中出现了错误,以下面为例: js代码: document.agentFor ...
- 结合P2P软件使用Ansible分发大文件
一 应用场景描述 现在我需要向50+数量的服务器分发Logstash新版本的rpm包,大概220MB左右,直接使用Ansible的copy命令进行传输,命令如下: 1 ansible all -m ...
- 一定要记住这20种PS技术,让你的照片美的不行! - imsoft.cnblogs
照片名称:调出照片柔和的蓝黄色-简单方法, 1.打开原图素材,按Ctrl + J把背景图层复制一层,点通道面板,选择蓝色通道,图像 > 应用图像,图层为背景,混合为正片叠底,不透明度50%,反相 ...
- (2)hashlib模块(加密算法模块)
hash算法模块内有很多种,如md5.sha1等,只是加密的程度不一样 hash是一种算法 该算法接收传入的文本内容,经过hash运算得到一串hash值 hash值具备三个特点: 1. 如果传入的内容 ...
- http状态码301和302详解及区别——辛酸的探索之路(文章源自:http://blog.csdn.net/grandPang/article/details/47448395)
一直对http状态码301和302的理解比较模糊,在遇到实际的问题和翻阅各种资料了解后,算是有了一定的理解.这里记录下,希望能有新的认识.大家也共勉. 官方的比较简洁的说明: 301 redirect ...
- PDF文本框更改字体大小
在Adobe Acrobat Professional 7.0版本后里单击所插入的文本框,会出现文本框属性,此时只能改文本框的属性,不能修改文本框内的字体大小 要改字体很简单,左键选中要改的文本,按 ...