树状数组模板

#define lowbit(x) (x&(-x))
int c[Max], n;//n为元素个数

void add(int x, int v)//单点给元素+v
{for (int i = x;i <= n;i += lowbit(i))c[i] += v;}

int que(int x)//询问前x元素的总和
{
int ans = 0;
for (int i = x;i != 0;i -= lowbit(i))ans += c[i];
return ans;
}

全部评论

相关推荐

点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务