#include<cstdio> #include<cmath> #include<cstring> #include<algorithm> using namespace std; int lowbit(int i) { return i&-1; } void add(int i,int value) { while(i<=n) { c[i]+=value; i+=lowbit(i); } } int sum(int i) { int sum=0; while(i>0) { sum+=c[i]; i-=lowbit(i); } return sum; //前i个数的和 }
原文:http://www.cnblogs.com/a249189046/p/7353237.html