HUD 1541 BIT 數狀陣列

2021-07-22 04:38:15 字數 624 閱讀 9849

題目鏈結

/*

按從左到右,從下到上的順序給出星星的座標,計算出level為[0,n)的星星的個數。

星星的level為該星星左下邊(包括自己正下方的星星,但是不包括自己)星星的個數。

bit模板題。

£:把星星的下標轉化成從1開始。

£:想到用bit做。

*/#include

#include

#include

using

namespace

std;

const

int maxn=35000+5;

const

int ma=32000+5;

int c[maxn];

int lev[maxn];

int n;

inline

int lowbit(int x)

int sum (int x)

return ret;

}void add (int x,int d)

}int main ()

for(int i=0;iprintf("%d\n",lev[i]);

}return

0;}

Turing Tree(數狀陣列)

sample output 156 36 statistic submit back 題意 求乙個區間內不重複數字的和,例如1 1 1 3,區間 1,4 的和為4。題解 先把要求的區間按右區間公升序排序,再把原來的陣列按順序依次插入樹狀陣列,假設當前插入a i 先判斷a i 在之前有沒有出現過,沒有...

數狀陣列(入門)

學習陣列陣列的好處 樹狀陣列相對於線段樹的編碼來講,樹狀陣列的編碼並不複雜,反而很簡單,對於一些區間求和,區間求最大值,維護區間的問題,反而能更簡單的解決 樹狀陣列核心 int lowbit int i lowbit 可以尋找樹狀陣列中的前向位置和後向位置 例如要更改乙個區間當中的和 void up...

模板數狀陣列

如題,已知乙個數列,你需要進行下面兩種操作 第一行包含兩個正整數 n,m,分別表示該數列數字的個數和操作的總個數。第二行包含 n個用空格分隔的整數,其中第 i個數字表示數列第 i項的初始值。接下來 m行每行包含 3個整數,表示乙個操作,具體如下 輸出包含若干行整數,即為所有操作 222 的結果。in...