0pts 求调
  • 板块P2068 统计和
  • 楼主C202301
  • 当前回复0
  • 已保存回复0
  • 发布时间2024/4/23 12:41
  • 上次更新2024/4/23 12:42:22
查看原帖
0pts 求调
975726
C202301楼主2024/4/23 12:41
#include<iostream>
using namespace std;
long long c[500005],n;
long long lowbit(long long x)
{
	return x&(-x);
}
void add(long long a,long long b)
{
	for(int i=a;i<=n;i+=lowbit(i))
	c[i]+=b;
}
int sum(int x)
{
	long long pep=0;
	for(int i=x;i;i-=lowbit(i))
	pep+=c[i];
	return pep;
}
int main()
{
	int m;
	cin>>n>>m;
	for(int i=1;i<=m;i++)
	{
		char op;
		cin>>op;
		if(op=='x')
		{
			long long x,k;
			cin>>x>>k;
			add(x,k);
		}
		if(op=='y')
		{
			long long l,r;
			cin>>l>>r;
			cout<<sum(r)-sum(l-1)<<endl;
		}
	}
	return 0;
}
2024/4/23 12:41
加载中...