献上黑历史: CE的几次是因为蒟蒻内外循环用同一个量,ce++ WA是因为蒟蒻不会写线段树,写了个单调队列,OK——W TLE是因为蒟蒻脑子有病: while m<>0 do begin ………… end;没有加dec(m); RE是因为蒟蒻数组开太小:第一次开110000:第二次开200000:结果就………… AC是因为数组开大一点,学学MZL大神的线段树,数组开到800005(⊙o⊙)… sb代码献上,并在此献上膝盖给MZL var len,x,n,d,m,lst:longint; op:
思路:在单调队列不更新列首,因为查询区间大小不确定,所以不能保证下次是否还用到它 #include <cstdio> #include <cstring> #include <algorithm> using namespace std; #define N 222222 #define ll long long int que[N]; ll m,d; ll a[N]; int cnt; char op[2]; int num; int main(){ scanf(&q