[模板]树状数组
1 int sum(int p){ 2 int s=0; 3 for(int i=p;i;i-=i&(-i))s+=a[i]; 4 return s; 5 } 6 void add(int p,int num){ 7 for(int i=p;i<=n;i+=i&(-i))a[i]+=num; 8 } 9 //in main 10 if(o[0]=='A'){ 11 scanf("%d%d%d",&q,&r,&nu); 12 add(q,nu); 13 add(r+1,-nu); 14 } 15 else{ 16 scanf("%d",&r); 17 printf("%d\n",sum(r)); 18 }
$Fate \ is \ Fake$

浙公网安备 33010602011771号