树状数组求后缀和

代码中的下标从0开始,原理是一样的

int f[N];

void upd(int x, int val){
	for (int i = x; i >= 0; i = (i & (i + 1)) - 1)
		f[i] += val;
}

int get(int x){
	int res = 0;
	for (int i = x; i < N; i |= i + 1)
		res += f[i];
	return res;
}

posted on 2020-01-18 23:18  欣崽  阅读(521)  评论(0)    收藏  举报

导航