当前位置: 移动技术网 > IT编程>开发语言>C/C++ > 树状数组

树状数组

2019年05月21日  | 移动技术网IT编程  | 我要评论

中华杂文网,藤黄茶,红安县教育局

lowbit(x)=2^k
int lowbit(int t) { return t & (-t); }
单点更新
x是更改的位置,y是更改的值
void add(int x, int y) { for (int i = x; i <= n; i += lowbit(i)) tree[i] += y; }
求a数组中前x项的和 
int getsum(int x) { int ans = 0; for (int i = x; i > 0; i -= lowbit(i)) ans += tree[i]; return ans; }

大佬的解释

https://www.cnblogs.com/hsd-/p/6139376.html

 

如对本文有疑问,请在下面进行留言讨论,广大热心网友会与你互动!! 点击进行留言回复

相关文章:

验证码:
移动技术网