luogu P3374树状数组模板
来源:互联网 发布:淘宝上怎么上传宝贝 编辑:程序博客网 时间:2024/06/08 14:43
记不下来……对着教程码
用上三个树状数组的重要子函数
代码可读性还行
#include<bits/stdc++.h>using namespace std;#define maxn 500010int c[maxn],a[maxn];int lowbit(int x){ return x&(x^(x-1));//x& -x;}//查询sum int getsum(int x){ int res = 0; while(x){ res+=c[x]; x-=x&(-x); } return res;}//修改int add(int i,int data){ while(i<=maxn){ c[i]+=data; i+=lowbit(i); }}int main(){ int n,m; cin>>n>>m; for(int i=1;i<=n;i++) { cin>>a[i]; add(i,a[i]); } while(m--){ int t; cin>>t; if(t==1){ int x,k; cin>>x>>k; add(x,k); } else if(t==2){ int x,y; cin>>x>>y; cout<<getsum(y)-getsum(x-1)<<endl; } }}
小细节:[x,y]的区间和是[1,y]的和-[1,x-1]的和,不是x
阅读全文
0 0
- luogu P3374树状数组模板
- P3374 【模板】树状数组 1
- 【模板】树状数组 洛谷P3374
- 洛谷 P3374 【模板】树状数组 1
- 洛谷 P3374【模板】树状数组 1
- 洛谷P3374 [模板]树状数组1
- 洛谷P3374 【模板】树状数组 1
- 【洛谷】 P3374 【模板】树状数组 1
- 洛谷 P3374 【模板】树状数组 1
- 树状数组,洛谷P3374 【模板】树状数组 1
- P3374 树状数组 1
- 洛谷P3374 树状数组
- 【模板】树状数组 单点修改,区间求和 (模板题:洛谷P3374树状数组1)
- 树状数组简介(洛谷P3368、P3374)
- Luogu 3368(树状数组)
- 树状数组【模板】
- 树状数组模板
- 树状数组 模板
- 自己基于指针实现双链表(1.0)(shaffer教材)
- SQL基础教程
- 过拟合的解决方法
- 【unix学习】文件处理3—正则表达式和grep命令
- URL和URI
- luogu P3374树状数组模板
- 机器学习算法优缺点比较
- css列表
- 树的前中后序遍历
- 【Excel-2010】规范录入调查问卷
- javascript onclick事件中传递对象参数和JavaScript中对象字符串转换
- 动态规划-LCS
- 实验七:将menu设计为可重用的子系统
- 图像识别与处理之Opencv——高斯滤波GaussianBlur() 11月2日暂存