題目鏈結
帶修改莫隊模板。
加乙個變數記錄現在是第幾次修改,看看當前列舉的詢問是第幾次修改,改少了就改過去,改多了就改回來。
話說我棧用成佇列了能過樣例?!!!!
#include#include#include
#include
#include
#include
#include
#define maxn 50000
using
namespace
std;
inline
long
long
read()
while
(isdigit(ch))
return num*f;
}int
s[maxn];
struct
que}q[maxn],w[maxn];
intcntq,cntw;
intcnt;
intd[maxn];
intdfn;
intsum[maxn];
intstack[maxn],top;
intans[maxn];
intmain()
for(int i=1;i<=m;++i);
else w[++cntw]=(que);
}sort(q+1,q+cntq+1
);
int l=0,r=0,now=0,tot=1;sum[0]=1
;
for(int i=1;i<=cntq;++i)
while(r>y)
while(lwhile(l>x)
while(now}
while(now>id)
now--;
}ans[q[i].dfn]=tot;
}for(int i=1;i<=dfn;++i) printf("
%d\n
",ans[i]);
return0;
}
BZOJ 2120 數顏色(帶修莫隊)
給定乙個序列要求查詢乙個區間不同顏色的個數,支援修改操作。記乙個看起來很sb時間複雜度o n5 3 o n 5 3 連暴力都是o n2 o n 2 但是有些時候可以代替樹套樹而且空間非常小而且超好些的高科技演算法帶修莫隊 時間複雜度就懶得分析了。說幾個細節吧 include using namesp...
HYSBZ 2120 數顏色 (帶修莫隊)
思路 帶修改莫隊在普通莫隊的基礎上增加了乙個時間指標,對時間指標的操作和對 l r 指標操作幾乎相同,排序函式稍有變化。對於時間指標,新增乙個 update 函式,具體實現見 code include define debug x cout x x endl define pii pair defi...
bzoj 2120 數顏色 帶修莫隊)
題意 兩種操作 q 詢問區間 l r 內顏色的種類 r 單點修改 思路 帶修莫隊與普通莫隊不同之處就是,帶修莫隊可以支援修改操作,我們可以再維護一維來表示操作的時間,那麼離線處理詢問時,我們就需要維護 l,r,t,三根指標,同時因為是三根指標 塊的大小分成 n的2 3次方,其他地方和普通莫隊維護是一...