全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;
}
搞不懂哪里有问题。。。