不开O都能过
by OIer_FY @ 2023-03-22 12:26:26
十万 2s,很难卡掉吧。
by Daniel_lele @ 2023-03-22 12:36:50
@[Daniel_lele](/user/116664) 1e10 为啥难卡
by Sky390 @ 2023-03-22 12:43:57
@[Sky390](/user/806835) 2s 啊,这种题一般都是小常数,一秒 $10^9\sim2\times10^9$ 和小常数卡卡可过。
by Daniel_lele @ 2023-03-22 12:45:46
难绷
by TernaryTree @ 2023-03-22 12:46:13
这是红名蓝钩说出的话?
by _Karasu_ @ 2023-03-22 14:39:49
如果带剪枝的小常数n^2,跑过去比较正常
如果跑满的n^2冲过去了,那就属于是造数据的比较逆天。
by zztqwq @ 2023-03-22 14:41:29
我猜楼主应该是第一种,合理的剪枝下啥玩意跑过去了其实都正常(
by zztqwq @ 2023-03-22 14:44:58
弱弱地问一句:怎么剪
by danielqf @ 2023-03-22 20:45:23
```c++
#include<bits/stdc++.h>
#define ll long long
using namespace std;
const int N=1e5+5;
int n,m;
struct lr { int l,r,v; }a[N];
bool cmp(lr a,lr b) { return a.v<b.v; }
int main() {
// freopen("query.in","r",stdin),freopen("query.out","w",stdout);
scanf("%d%d",&n,&m);
for(int i=1;i<=n;i++) scanf("%d%d%d",&a[i].l,&a[i].r,&a[i].v);
sort(a+1,a+n+1,cmp);
ll pre=1;
while(m--) {
int x;
ll A,B,C,ans=0;
scanf("%d%lld%lld%lld",&x,&A,&B,&C);
int k=(A*pre+B)%C+1,vpp=0;
for(int i=1;i<=n;i++) {
if(a[i].l<=x&&x<=a[i].r) {
vpp++;
ans+=a[i].v;
}
if(vpp==k) break;
}
pre=ans;
printf("%lld\n",ans);
}
}
```
能过
虽然准确来说是 $n^2$ 过十万
by OIer_FY @ 2023-03-22 20:45:28