Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- // Đây là code BIT 1D
- =====================
- const int N=100005;
- int T[N];
- void update(int u, int x){
- for (int i=u; i<N; i+=i&-i)
- T[i]+=x;
- }
- int get(int u, int x){
- int Sum = 0;
- for (int i=u; i>0; i-=i&-i)
- Sum += T[i];
- return Sum;
- }
- // Đây là code BIT 1D anh dùng
- ==============================
- struct fenwick_tree{
- int T[N];
- void update(int u, int x)
- { for (int i=u; i<N; i+=i&-i) T[i]+=x; }
- int get(int u)
- { int Sum=T[u]; while (u-=u&-u) Sum+=T[u]; return Sum; }
- } BIT;
- // Đây là code BIT 2D
- =====================
- void update(int x, int y, int k){
- for (int i=x; i<N; i+=i&-i)
- for (int j=y; j<N; j+=j&-j)
- T[i][j]+=k;
- }
- int get(int x, int y){
- int Sum = 0;
- for (int i=x; i>0; i-=i&-i)
- for (int j=y; j>0; j-=j&-j)
- Sum += T[i][j];
- return Sum;
- }
Advertisement
Add Comment
Please, Sign In to add comment