1. 程式人生 > >樹狀陣列(hdu-4325,hdu-1166,pat-1057)

樹狀陣列(hdu-4325,hdu-1166,pat-1057)

1、hdu-4325

題意:插花,要麼給出插花的範圍,要麼查詢某個點的花的個數。

思路:通過更新,每次更新區間S到T的數值,表插入花(這一點一開始沒想到),

要麼查詢某個點的花的數目。

(與以往單純的區間查詢和單點修改的區間和不太相同)。

 

2、hdu-1166

典型的單點查詢,區間求和的問題。(套模板就行)

 

3、pat-1057(甲級)

題意:堆疊有pop和push兩種操作,

現在增加一種新的操作,查詢中間值。

如果堆疊的大小n使偶數,查詢第n/2個最小數。

思路:每次插入或刪除時更新區間,就表示標記或去標記(與hdu-4325類似),

找中間值時可以用二分查詢,找到標記次數等於k的就行了。