树状数组 模板
来源:互联网 发布:20174g网络哪家网速快 编辑:程序博客网 时间:2024/04/28 07:06
可以快速求区间和等问题,查询更新复杂度都是lgn, 常数比线段树低。
一维树状数组:
long long c[100010];int n;inline int lowbit(int x) { return x & -x;}void update(int idx, int v) { while (idx <= n) { c[idx] += v; idx += lowbit(idx); }}long long query(int x) {// The sum of 1 to x long long ans = 0; while(x > 0) { ans += c[x]; x -= lowbit(x); } return ans;}
二维树状数组:
long long BI_tree[1010][1010];int nx, ny;inline int lowbit(int x) { return x & -x;}void update(int x, int y, int v) { for(int i = x; i <= nx; i += lowbit(i)) for(int j = y; j <= ny; j += lowbit(j)) BI_tree[i][j] += v;}long long query(int x, int y) { long long ans = 0; for(int i = x; i > 0; i -= lowbit(i)) for(int j = y; j > 0; j -= lowbit(j)) ans += BI_tree[i][j]; return ans;}
阅读全文
1 0
- 树状数组【模板】
- 树状数组模板
- 树状数组 模板
- 树状数组模板
- 树状数组模板
- 树状数组-模板
- 树状数组模板
- 树状数组模板
- 树状数组模板
- 树状数组--模板
- 树状数组模板
- 模板 树状数组
- 模板,树状数组
- 树状数组(模板)
- 树状数组模板
- 树状数组的模板;
- 树状数组 (模板)
- 树状数组BIT 模板
- 判断学生成绩是否有效
- 图层样式简述-1
- 步进驱动器基础及工作原理
- 1048. Find Coins (25)
- 算法第七周Maximum Binary Tree[medium]
- 树状数组 模板
- 树与二叉树
- union-find算法
- STM32学习之:NVIC的初步理解
- 输出宝塔型杨辉三角(Java语言)
- 源码编译安装EMQ
- Tornado框架08-应用安全
- 2017-10-16总结第六天
- C++的存储区