首页 > 编程语言 > 详细

树状数组模板-1200-序列和

时间:2020-06-18 20:21:28      阅读:40      评论:0      收藏:0      [点我收藏+]

code1200

技术分享图片

技术分享图片

#include <iostream>
#include <cstdio>
#include <algorithm>
using namespace std;
int n,m,a[100005],c[100005];
int lowbit(int x){return x&(-x);}
void add(int x,int d){for(int i=x;i<=n;i+=lowbit(i)) c[i]+=d;}
int ask(int x)
{
	int ans=0;
	for(int i=x;i>0;i-=lowbit(i))
	ans+=c[i];return ans;
}
int main()
{
	scanf("%d%d",&n,&m);
	for(int i=1;i<=m;++i)
	{
		char f1[5]; int f2,f3; scanf("%s %d%d",&f1,&f2,&f3);
		if(f1[0]==‘A‘&&f1[1]==‘d‘) add(f2,f3);
		else if(f1[0]==‘S‘) add(f2,-f3);
		else printf("%d\n",sum(f3)-sum(f2-1));
	}
	return 0;
}

树状数组模板-1200-序列和

原文:https://www.cnblogs.com/wuwendongxi/p/13159412.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!