树状数组模板
讲解:传送门
const int maxn=50005;
const double eps=1e-8;
int tree[maxn];
inline int lowbit(int x)
{
return x&-x;
}
void add(int x,int value) //输入数据时,需要调用此函数加到tree[]里面
{
for(int i=x;i<=maxn;i+=lowbit(i))
{
tree[i]+=value;
}
}
int get(int x) //获取的是tree[1]+……+tree[x]的值
{
int sum=0;
for(int i=x;i;i-=lowbit(i))
{
sum+=tree[i];
}
return sum;
}