模板,树状数组
2015-12-21 14:55
337 查看
代码:
struct Bit { vector<int> a; int sz; void init(int n) { sz=n; for(int i=1;i<=n+5;i++) a.push_back(0); } int lowbit(int x) { return x&(-x); } int query(int x) { int ans = 0; for(;x;x-=lowbit(x))ans+=a[x]; return ans; } void update(int x,int v) { for(;x<sz;x+=lowbit(x)) a[x]+=v; } }bit;
相关文章推荐
- Linux下文件的压缩与打包
- 计算字符个数
- glib中hash table
- 配置Log4j(很详细)
- Ant_build.xml解释
- redis持久化
- ios 友盟新浪微博分享 常见问题
- gpio口、内核定时器使用
- 机器学习常用算法(LDA,CNN,LR)原理简述
- mysql性能优化(二)
- 利其器之webstorm快捷键
- 整数排序
- Linux下安装PlayOnLinux 4.2.4来使用windows程序和游戏
- angular 中 cacheFactory 数据传递
- glib库中的哈希函数和比较函数
- [置顶] C-函数
- ubuntu下优雅地切换java版本
- 测试用例生命周期
- 中断相关一【转】
- 不要让我杀人,我正在屠城。分享一下我的应聘简历。