#include<cstdio>
#include<cstdlib>
#include<algorithm>
#include<cstring>
#include<vector>
#define MAXN 100000+10
#define Nd Node*
#define pii pair<int,int>
#define mp make_pair
#define ft first
#define sc second
#define pb push_back
#define ll long long
using namespace std;
struct Node{
Nd l;Nd r;
int L,R,cnt;
ll sum;
};
Nd rt[MAXN];
ll b[MAXN];
Nd NewNode(Nd l,Nd r,int L,int R,ll sum,int cnt){
Nd ret=new Node;
ret->l=l,ret->r=r,ret->L=L,ret->R=R,ret->sum=sum,ret->cnt=cnt;
return ret;
}
Nd Build(int L,int R){
Nd ret=NewNode(NULL,NULL,L,R,0LL,);
if(L+!=R)ret->l=Build(L,(L+R)>>),ret->r=Build((L+R)>>,R);
return ret;
}
void update(Nd &A,Nd B,int p,ll x,int f){
if(!B)return;
A=NewNode(B->l,B->r,B->L,B->R,B->sum+f*x,B->cnt+f);
if(p<(B->L+B->R)>>)update(A->l,B->l,p,x,f);
else update(A->r,B->r,p,x,f);
}
ll query(Nd A,int k){
if(!A->l)return k*b[A->L];
if(A->l->cnt>=k)return query(A->l,k);
else return query(A->r,k-A->l->cnt)+A->l->sum;
}
struct Opt{
int L,R,p;
ll x;
}s[MAXN];
int n,m,sz;
vector<pii> vs[MAXN];
void init(){
scanf("%d%d",&m,&n);
for(int i=;i<=m;i++){
scanf("%d%d%lld",&s[i].L,&s[i].R,&s[i].x);
b[i]=s[i].x;
}
sort(b+,b+m+);
sz=unique(b+,b+m+)-(b+);
rt[]=Build(,sz+);
for(int i=;i<=m;i++){
s[i].p=lower_bound(b+,b+m+,s[i].x)-b;
vs[s[i].L].pb(mp(s[i].p,));
vs[s[i].R+].pb(mp(s[i].p,-));
}
for(int i=;i<=n;i++){
rt[i]=rt[i-];
for(int j=;j<vs[i].size();j++){
pii &t=vs[i][j];
update(rt[i],rt[i],t.ft,b[t.ft],t.sc);
}
}
}
void solve(){
ll pre=,X,A,B,C;
int k;
for(int i=;i<=n;i++){
scanf("%lld%lld%lld%lld",&X,&A,&B,&C);
k=(A*pre+B)%C+;
pre=(k>=rt[X]->cnt?rt[X]->sum:query(rt[X],k));
printf("%lld\n",pre);
}
}
int main()
{
//freopen("data.in","r",stdin);
init();
solve();
return ;
}

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

  1. 洛谷 P3168 [CQOI2015]任务查询系统 解题报告

    P3168 [CQOI2015]任务查询系统 题目描述 最近实验室正在为其管理的超级计算机编制一套任务管理系统,而你被安排完成其中的查询部分. 超级计算机中的任务用三元组\((S_i,E_i,P_i) ...

  2. 洛谷P3168 [CQOI2015]任务查询系统 [主席树,差分]

    题目传送门 任务查询系统 题目描述 最近实验室正在为其管理的超级计算机编制一套任务管理系统,而你被安排完成其中的查询部分.超级计算机中的任务用三元组(Si,Ei,Pi)描述,(Si,Ei,Pi)表示任 ...

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

    题链: https://www.luogu.org/problemnew/show/P3168题解: 主席树 强制在线? 那就直接对每一个前缀时间建一个线段树(可持久化线段树),线段树维护优先度权值. ...

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

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

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

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

  6. 洛谷$P$3168 任务查询系统 $[CQOI2015]$ 主席树

    正解:主席树 解题报告: 传送门! 首先考虑如果是单点修改,那就是个线段树板子嘛$QwQ$ 然后现在是区间修改,对于区间修改,显然就考虑差分下,就变成单点修改辣$QwQ$ 同时单点查询前$k$小也就变 ...

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

    题目描述 最近实验室正在为其管理的超级计算机编制一套任务管理系统,而你被安排完成其中的查询部分.超级计算机中的任务用三元组(Si,Ei,Pi)描述,(Si,Ei,Pi)表示任务从第Si秒开始,在第Ei ...

  8. Luogu P3168 [CQOI2015]任务查询系统

    题目链接 \(Click\) \(Here\) 差分主席树,就是把主席树做成一个差分前缀和的形式,还是很容易想到的. 写主席树的时候几个注意点: 查询可能开始于所有任务之前,二分任务点要把左边界设置为 ...

  9. p3168 [CQOI2015]任务查询系统(差分+主席树)

    恕我才学浅薄,一开始想到的是树状数组+线段树,然后看了题解才第一次见到了差分这种神奇的科技 仔细想想,主席树的本质不就是前缀和嘛,加上一个差分也是可以的,没想到真是罪过罪过 对时间维护一个差分 在Si ...

随机推荐

  1. Python choice() 函数

    Python choice() 函数  Python 数字 描述 choice() 方法返回一个列表,元组或字符串的随机项. 语法 以下是 choice() 方法的语法: import random ...

  2. window.showModalDialog

    //新版本谷歌没有window.showModalDialog,创建一个window.openif(window.showModalDialog == undefined){  window.show ...

  3. STL之queue

    描述 使用STL中的queue,完成入队.出队.获取队首.获取队尾等基本操作. 部分代码已经给出,请补充完整,提交时请勿包含已经给出的代码. int main() { queue<int> ...

  4. MySQL“Another MySQL daemon already running with the same unix socket” 报错信息处理

    Mysql "Another Mysql daemon already running with the same unix socket" 解决办法:rm var/lib/mys ...

  5. Linq GroupJoin

    static void Main(string[] args) { List<Person> persons = new List<Person> { }, }, }; Lis ...

  6. Java设计模式(八)Proxy代理模式

    一.场景描述 代理在生活中并不少见,租房子需要找中介,打官司需要找律师,很多事情我们需要找专业人士代理我们做,另一方面,中介和律师也代理了房东.法律程序与我们打交道. 当然,设计模式中的代理与广义的代 ...

  7. lambda匿名函数透析

    lambda匿名函数透析 目录 1       匿名函数的作用... 1 2       匿名函数的格式... 1 3       匿名函数实例代码... 3   1         匿名函数的作用 ...

  8. python CSS

    CSS 一. css的四种引入方式   1.行内式  2.嵌入式  3. 链接式 将一个.css文件引入到HTML文件中 1 <link href="mystyle.css" ...

  9. Codeforces Round #436 (Div. 2) D. Make a Permutation!

    http://codeforces.com/contest/864/problem/D 题意: 给出n和n个数(ai <= n),要求改变其中某些数,使得这n个数为1到n的一个排列,首先保证修改 ...

  10. 屏幕上两点画线+DDALine算法

    编译环境VS2017+EasyX #include "stdafx.h" #include"graphics.h" void DDALine(int x0, i ...