树状数组不用动脑子真爽啊

#include <algorithm>
#include <iostream>
#include <cstdio>
using namespace std;
typedef long long ll;
int m, n, b[100005], rem, rot[100005], lson[20000005], rson[20000005], siz[20000005];
int cnt, xi, ai, bi, ci, ki, qque[45], len;
ll sum[20000005], lst=1;
struct Task{
int fro, too, val;
}tsk[100005];
int lowbit(int x){
return x&-x;
}
void update(int &rt, int l, int r, int x, int val){
if(!rt) rt = ++cnt;
siz[rt] += val;
sum[rt] += val * b[x];
if(l==r) return ;
int mid=(l+r)>>1;
if(x<=mid) update(lson[rt], l, mid, x, val);
if(mid<x) update(rson[rt], mid+1, r, x, val);
}
ll query(int l, int r, int k){
if(l==r) return (ll)k*b[l];
int tmp=0;
ll tat=0;
for(int i=1; i<=len; i++)
tmp += siz[lson[qque[i]]], tat += sum[lson[qque[i]]];
int mid=(l+r)>>1;
if(k<=tmp){
for(int i=1; i<=len; i++)
qque[i] = lson[qque[i]];
return query(l, mid, k);
}
else{
for(int i=1; i<=len; i++)
qque[i] = rson[qque[i]];
return query(mid+1, r, k-tmp)+tat;
}
}
int main(){
cin>>m>>n;
for(int i=1; i<=m; i++){
scanf("%d %d %d", &tsk[i].fro, &tsk[i].too, &tsk[i].val);
b[i] = tsk[i].val;
}
sort(b+1, b+1+m);
rem = unique(b+1, b+1+m) - (b + 1);
for(int i=1; i<=m; i++){
int tmp=lower_bound(b+1, b+1+rem, tsk[i].val)-b;
for(int j=tsk[i].fro; j<=n; j+=lowbit(j))
update(rot[j], 1, rem, tmp, 1);
for(int j=tsk[i].too+1; j<=n; j+=lowbit(j))
update(rot[j], 1, rem, tmp, -1);
}
for(int i=1; i<=n; i++){
scanf("%d %d %d %d", &xi, &ai, &bi, &ci);
ki = 1 + ((ll)ai*lst+bi) % ci;
int tmp=0;
ll ppp=0;
for(int i=xi; i; i-=lowbit(i)){
tmp += siz[rot[i]];
ppp += sum[rot[i]];
}
if(tmp<ki) lst = ppp;
else{
len = 0;
for(int i=xi; i; i-=lowbit(i))
qque[++len] = rot[i];
lst = query(1, rem, ki);
}
printf("%lld\n", lst);
}
return 0;
}

luogu3168 [CQOI2015]任务查询系统的更多相关文章

  1. BZOJ_3932_[CQOI2015]任务查询系统_主席树

    BZOJ_3932_[CQOI2015]任务查询系统_主席树 题意: 最近实验室正在为其管理的超级计算机编制一套任务管理系统,而你被安排完成其中的查询部分.超级计算机中的 任务用三元组(Si,Ei,P ...

  2. BZOJ3932: [CQOI2015]任务查询系统 主席树

    3932: [CQOI2015]任务查询系统 Time Limit: 20 Sec  Memory Limit: 512 MBSubmit: 4869  Solved: 1652[Submit][St ...

  3. P3168 [CQOI2015]任务查询系统

    题目地址:P3168 [CQOI2015]任务查询系统 主席树的模板题 更模板的在这儿:P3834 [模板]可持久化线段树 1(主席树) 形象的说,P3834是"单点修改,区间查询" ...

  4. 主席树||可持久化线段树||离散化||[CQOI2015]任务查询系统||BZOJ 3932||Luogu P3168

    题目: [CQOI2015]任务查询系统 题解: 是一道很经典的题目.大体思路是抓优先级来当下标做主席树,用时刻作为主席树的版本.然而优先级范围到1e7去了,就离散化一遍.然后把每个事件的开始(s). ...

  5. bzoj3932 / P3168 [CQOI2015]任务查询系统(主席树+差分)

    P3168 [CQOI2015]任务查询系统 看到第k小,就是主席树辣 对于每一段任务(a,b,k),在版本a的主席树+k,版本b+1的主席树-k 同一时间可能有多次修改,所以开个vector存操作, ...

  6. 2018.06.30 BZOJ 3932: [CQOI2015]任务查询系统(主席树)

    3932: [CQOI2015]任务查询系统 Time Limit: 20 Sec Memory Limit: 512 MB Description 最近实验室正在为其管理的超级计算机编制一套任务管理 ...

  7. [CQOI2015]任务查询系统 主席树

    [CQOI2015]任务查询系统 LG传送门 以前还没见过主席树的这种写法. 考虑使用差分的思想处理每一个任务,然后所有的东西就都能顺理成章地用主席树维护了,查询的时候和平时的主席树有一点不同,详见代 ...

  8. 【BZOJ3932】[CQOI2015]任务查询系统 主席树

    [BZOJ3932][CQOI2015]任务查询系统 Description 最近实验室正在为其管理的超级计算机编制一套任务管理系统,而你被安排完成其中的查询部分.超级计算机中的 任务用三元组(Si, ...

  9. bzoj 3932: [CQOI2015]任务查询系统 -- 主席树 / 暴力

    3932: [CQOI2015]任务查询系统 Time Limit: 20 Sec  Memory Limit: 512 MB Description 最近实验室正在为其管理的超级计算机编制一套任务管 ...

随机推荐

  1. [NOIP2018校模拟赛]T1聚会 party

    题目链接: 聚会 分析: 设每个点到1号点的距离为dist_{i},每个点的权值为x_{i},目标点到1号点的距离为dist,权值为x,那么对于每一次查询,我们讨论三种情况: ① 目标家庭在区间左边( ...

  2. 记忆化搜索(DFS+DP) URAL 1501 Sense of Beauty

    题目传送门 /* 题意:给了两堆牌,每次从首部取出一张牌,按颜色分配到两个新堆,分配过程两新堆的总数差不大于1 记忆化搜索(DFS+DP):我们思考如果我们将连续的两个操作看成一个集体操作,那么这个操 ...

  3. jmeter(二十一)JMeter 命令行(非GUI)

    一.应用场景 1.无需交互界面或受环境限制(linux text model) 2.远程或分布式执行 3.持续集成,通过shell脚本或批处理命令均可执行,生成的测试结果可被报表生成模块直接使用,便于 ...

  4. php url地址栏传中文乱码解决方法集合

     php地址栏传中文$_GET下来后乱码,urlencode和urldecode,iconv,base64_encode等方法,整理基本是常用的了. php地址栏传中文$_GET下来后乱码,urlen ...

  5. mongoDB内置文档定义

    在最近的设计数据库时,犯了一个低级的错误,就是设置内置文档是定义了错误了,导致数据取不出,去找了很多资料都无法解决.最后看了一了一下自己设置的model文件.配置错误,所以导致数据取不出了. 数据库时 ...

  6. [转]java注解与APT技术

    下面是一个简单的自定义注解的栗子: package annotation; import java.lang.annotation.Documented; import java.lang.annot ...

  7. poj2184 Cow Exhibition

    思路: dp+滚动数组. 类似01背包. 实现: #include <iostream> #include <cstdio> #include <algorithm> ...

  8. OCP 11g 第一章练习

    练习 1-1 研究所在环境的DBMS 这是一个书面练习,没有具体的解决方案. 确定自己所在环境使用的应用程序, 应用服务器 , 和数据库. 然后集中精力研究数据库, 体验一下数据库的规模和忙碌程度. ...

  9. MVC之在实例中的应用

    MVC模式在Java Web应用程序中的实例分析 1. 结合六个基本质量属性 1)可用性 2)可修改性 3)性能 4)安全性 5)可测试性 6)易用性 2. 分析具体功能模块的MVC设计实现(例如登录 ...

  10. Android(java)学习笔记166:上下文的区分

    1.两种上下文:  (1)Activity.this                               界面的上下文 (2)getApplicationContext()         整 ...