相當於找區間第k個數,同時支援刪點
這個題的線段樹操作和noid1t1有點像。所以調了半天。
注意對size取模,注意查詢區間第k的時候的特判
碼:#include#includeusing namespace std;
#define zuo o<<1,l,mid
#define you o<<1|1,mid+1,r
#define n 700005
int sz[n<<4],n,o,a,b,c,zz,op,i;
bool ky;
void up(int o)
void jian(int o,int l,int r)
int mid=(l+r)>>1;
jian(zuo);
jian(you);
up(o);
}void gai(int o,int l,int r)
if(a<=mid)gai(zuo);
if(b>mid)gai(you);
up(o);
}void cha(int o,int l,int r)
int main()
o++;
//找位置
op=1;a=zz;b=n;c=0;gai(1,1,n);
if(c
Bzoj3562 神器化合物 Shoi 2014
ac通道 分析 若把每乙個原子看作乙個節點,將化學鍵看作一條邊,那麼這個題目要求的 分子的個數 很容易就可以看出是求圖中聯通塊的個數。求聯通塊的個數,可以使用並查集。可如何求出每一步的聯通塊的個數呢?可以知道,當連上一條邊時,若此邊連線的是兩個不同的聯通塊,那麼分子個數就會減一 當刪去一條邊時,若刪...
bzoj4415 樹狀陣列 發牌
description 假設一開始,荷官拿出了一副新牌,這副牌有n張不同的牌,編號依次為1到n。由於是新牌,所以牌是按照順序排好的,從牌庫頂開始,依次為1,2,直到n,n號牌在牌庫底。為了發完所有的牌,荷官會進行n次發牌操作,在第i次發牌之前,他會連續進行r i次銷牌操作,r i由輸入給定。請問最後...
BZOJ 3566 SHOI2014 概率充電器
題目 題意 給定樹形結構的n個元件,每個元件有一定概率自己充電,還有一定概率通過某條邊給其他元件充電,求充電的元件期望個數。n 500000 題解 樹形結構肯定能想到樹形dp,全樹對某點產生的貢獻一般可以通過一到兩遍樹形dp計算得出,本題所求期望等於每個元件被充電的概率之和。設f i 表示i被充電的...