NYOJ 116士兵杀敌(二)(树状数组)(插点问线)
2013-07-18 11:38
323 查看
二叉索引数(树状数组) [code] #include<cstdio> #define Max 1000005 int C[Max]; int N,M; int lowbit(int x) { return x & -x; } int sum(int i)//计算前i项和 { int ret = 0; while(i>0) { ret += C[i]; i -= lowbit(i); } return ret; } void add(int x,int n)//A[x]元素增加n,即C[x]的前x项和加n { while(x <= N) { C[x] += n; x += lowbit(x); } } int main() { //freopen("in.txt","r",stdin); int i,a,b; char s[9]; scanf("%d%d",&N,&M); for(i=1; i<=N; i++) { scanf("%d",&a); add(i,a); } for(i=0; i<M; i++) { scanf("%s%d%d",s,&a,&b); if(s[0] == 'A') add(a,b); else printf("%d\n",sum(b)-sum(a-1)); } return 0; }
View Code
相关文章推荐
- nyoj--116 士兵杀敌(二)(树状数组)
- NYOJ 116 士兵杀敌(二) 树状数组 插点问线
- NYOJ 116 士兵杀敌(二) 树状数组 & 线段树
- nyoj-116 士兵杀敌(二) 树状数组
- nyoj 116 士兵杀敌(二)树状数组
- NYOJ-116士兵杀敌(二),树状数组~~
- 【树状数组(二叉索引树)】轻院热身—candy、NYOJ-116士兵杀敌(二)
- NYOJ116 士兵杀敌(二)【树状数组】
- NYOJ-116 士兵杀敌(二) 树状数组--插点问线
- NYOJ 116士兵杀敌(二) 树状数组
- nyoj_116士兵杀敌(二)(树状数组)
- nyoj 116 士兵杀敌(二)(树状数组)
- nyoj 116士兵杀敌(二) 树状数组的学习与使用
- nyoj--116--士兵杀敌(二)(树状数组)
- NYOJ 116-士兵杀敌2 树状数组:插点求线
- NYOJ116 士兵杀敌(二)(树状数组)
- nyoj--116--士兵杀敌(二)(树状数组)
- nyoj 116 士兵杀敌(二) 树状数组
- NYOJ 116-士兵杀敌2 树状数组:插点求线
- nyoj116 士兵杀敌(二)树状数组与线段树