求助
查看原帖
求助
608869
wnc0123456789楼主2023/12/5 17:42

全WA了,样例也能过,代码如下:

#include<bits/stdc++.h>
using namespace std;
const int N=1e5+10;
int n,m,c[N];
int lowbit(int i){
	return (-i)&i;
}
void add(int i,int x){
	for(;i<=n;i+=lowbit(i))c[i]+=x;
}
int sum(int i){
	int s=0;
	for(;i>0;i-=lowbit(i))s+=c[i];
	return s;
}
int sum(int i,int j){
	return sum(j)-sum(i-1);
}
int main(){
	memset(c,0,sizeof c);
	cin>>n>>m;
	while(m--){
		char c;
		int a,b;
		cin>>c>>a>>b;
		if(c=='x')add(a,b);
		else if(c=='y')cout<<sum(a,b)<<"\n";
	}
	return 0;
}

搞不懂哪里有问题。。。

2023/12/5 17:42
加载中...