3932: [CQOI2015]任务查询系统
Time Limit: 20 Sec Memory Limit: 512 MB
Submit: 1326 Solved: 480
[Submit][Status][Discuss]
Description
Input
Output
Sample Input
1 2 6
2 3 3
1 3 2
3 3 4
3 1 3 2
1 1 3 4
2 2 4 3
Sample Output
8
11
HINT
Source
题解:同bzoj1901,写一个进来时加,出去时删。。。。。
#include<set>
#include<map>
#include<ctime>
#include<queue>
#include<cmath>
#include<cstdio>
#include<vector>
#include<cstring>
#include<cstdlib>
#include<iostream>
#include<algorithm>
#define inf 100000000000000LL
#define pa pair<int,int>
#define ll long long
using namespace std;
ll read()
{
ll x=,f=;char ch=getchar();
while(ch<''||ch>''){if(ch=='-')f=-;ch=getchar();}
while(ch>=''&&ch<=''){x=x*+ch-'';ch=getchar();}
return x*f;
}
int m,n,cnt,mx;
int q[],top;
int S[],E[],P[],disc[];
int root[],size[],a[][];
ll sum[];
int insert(int x,int val,int f)
{
if(!x)x=++cnt;
size[x]+=f;sum[x]+=f*disc[val];
int tmp=x;
int l=,r=*m;
while(l!=r)
{
int mid=(l+r)>>,t=;
if(val>mid)t^=,l=mid+;
else r=mid;
if(!a[x][t])a[x][t]=++cnt;
x=a[x][t];size[x]+=f;
sum[x]+=f*disc[val];
}
return tmp;
}
void update(int x,int val,int f)
{
for(int i=x;i<=n;i+=i&-i)
root[i]=insert(root[i],val,f);
}
ll query(int x,int K)
{
ll ans=,tot=;
top=;
for(int i=x;i;i-=i&-i)
{
q[++top]=root[i],tot+=size[root[i]];
ans+=sum[root[i]];
}
if(K>tot)return ans;
else ans=;
int l=,r=*m;
while(l!=r)
{
int mid=(l+r)>>,t,tmp=;
for(int i=;i<=top;i++)
tmp+=size[a[q[i]][]];
if(tmp<K)
{
for(int i=;i<=top;i++)ans+=sum[a[q[i]][]];
t=;
K-=tmp,l=mid+;
}
else r=mid,t=;
for(int i=;i<=top;i++)
q[i]=a[q[i]][t];
}
ans+=1LL*K*disc[l];
return ans;
}
int main()
{
m=read();n=read();
for(int i=;i<=m;i++)
{
S[i]=read(),E[i]=read(),P[i]=read();
disc[i]=P[i];
}
sort(disc+,disc+m+);
for(int i=;i<=m;i++)
{
P[i]=lower_bound(disc+,disc+m+,P[i])-disc;
update(S[i],P[i],),update(E[i]+,P[i],-);
}
ll Pre=,X,A,B,C,K;
for(int i=;i<=n;i++)
{
X=read();A=read();B=read();C=read();
K=+(A*Pre+B)%C;
Pre=query(X,K);
printf("%lld\n",Pre);
}
return ;
}
bzoj3932的更多相关文章
-
【bzoj3932】 CQOI2015—任务查询系统
http://www.lydsy.com/JudgeOnline/problem.php?id=3932 (题目链接) 题意 给出$m$个区间,每个区间有一个权值,$n$组询问,每次询问在位置$x$权 ...
-
【BZOJ3932】[CQOI2015]任务查询系统 主席树
[BZOJ3932][CQOI2015]任务查询系统 Description 最近实验室正在为其管理的超级计算机编制一套任务管理系统,而你被安排完成其中的查询部分.超级计算机中的 任务用三元组(Si, ...
-
BZOJ3932 CQOI2015 任务查询系统 【主席树】
BZOJ3932 CQOI2015 任务查询系统 Description 最近实验室正在为其管理的超级计算机编制一套任务管理系统,而你被安排完成其中的查询部分.超级计算机中的任务用三元组(Si,Ei, ...
-
[bzoj3932][CQOI2015]任务查询系统_主席树
任务查询系统 bzoj-3932 CQOI-2015 题目大意:最近实验室正在为其管理的超级计算机编制一套任务管理系统,而你被安排完成其中的查询部分.超级计算机中的任务用三元组(Si,Ei,Pi)描述 ...
-
[bzoj3932][CQOI2015][任务查询系统] (主席树)
Description 最近实验室正在为其管理的超级计算机编制一套任务管理系统,而你被安排完成其中的查询部分.超级计算机中的 任务用三元组(Si,Ei,Pi)描述,(Si,Ei,Pi)表示任务从第Si ...
-
BZOJ3932: [CQOI2015]任务查询系统
传送门 真不知道我没学主席树之前是有什么勇气说自己高级数据结构以及学的七七八八了. 这道题应该也是算是主席树的经典运用. 刚开始脑抽了,想把(S,E,P)的处理直接在线用树状数组xjb搞搞算了.写完后 ...
-
【BZOJ3932】任务查询系统(主席树)
[BZOJ3923]任务查询系统(主席树) 题面 Description 最近实验室正在为其管理的超级计算机编制一套任务管理系统,而你被安排完成其中的查询部分.超级计算机中的 任务用三元组(Si,Ei ...
-
BZOJ3932 主席树
https://www.lydsy.com/JudgeOnline/problem.php?id=3932 题意:给出一些带有等级的线段,求一点上前K小个等级线段的等级之和 询问是对于每一个点询问前K ...
-
BZOJ3932: [CQOI2015]任务查询系统 主席树
3932: [CQOI2015]任务查询系统 Time Limit: 20 Sec Memory Limit: 512 MBSubmit: 4869 Solved: 1652[Submit][St ...
随机推荐
-
微信公众平台可通过UnionID机制在多公众号间帐号互通
微信公众平台越来越注重开发者的反馈信息了,这不,微信开放平台提供了UnionID机制,通过获取用户基本信息接口,开发者可通过OpenID来获取用户基本信息,而如果开发者拥有多个公众号,可使用以下办法通 ...
-
FreeRTOS和Ucos在任务优先级的区别
而ucos的任务优先级是任务优先级的数组越小,任务优先级越高.和STM32的中断优先级保持一样的分析,和freeRTOS相反.
-
合工大OJ 1337 一加二减三
Description 题目描述:给一个串,形如一+二-三,求值 Input 第一行为一个正整数T,表示数据的组数,接下来有T行每行都是一个形如一+二-三的串,一,二,三均为正整数 Output 对于 ...
-
记录sqoop同步失败问题解决过程,过程真的是很崎岖。(1月6日解决)
记录sqoop同步失败问题解决过程,过程真的是很崎岖.事发原因:最近突然出现sqoop export to mysql时频繁出错.看了下日志是卡在某条数据过不去了,看异常.看sqoop生成的mr并未发 ...
-
BT Smart vs ANT+ 技术孰优孰劣?
自从Bluetooth SIG提出Bluetooth 4.0,其BLE(Bluetooth Low Energy)开始用于穿戴式电子,而后也用于iBeacon室内定位,更之后Bluetooth 4.1 ...
-
CSS的position设置
CSS的position设置: <%@ page language="java" contentType="text/html; charset=UTF-8&quo ...
-
HDU_1009_FatMouse&#39; Trade
FatMouse' Trade Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) ...
-
C语言库函数探究
1.strlen()求字符串长度 //模拟实现strlen函数 #include<stdio.h> #include<stdlib.h> #include<string. ...
-
Paper藐小之处明察秋毫故时有物外之趣
暂且针对第一篇叶脉提取的paper 插入图像的"图 N": 英 Times New Roman, 中 宋体, 10磅. 文末的引文: 两端对齐. 流程图框格内文字换行时, 忌: 将 ...
-
春天JDBC事务管理
JDBC事务管理 春天提供编程式的事务管理(编程式事务管理)与声明式的事务管理(声明式事务management),为不同的事务实现提供了一致的编程模型,这节以JDBC事务为例,介绍Spring的事务管 ...