// get cumulative sum up to and including i
int Get(int i) {
int res = 0;
while(i) {
res += B[i];
i -= (i & -i);
}
return res;
}
// add val to value at i
void Set(int i, int val) {
while(i <= N) {
B[i] += val;
i += (i & -i);
}
}
算法 - 插入排序交换次数 - Binary Indexed Tree
原文:https://www.cnblogs.com/jffun-blog/p/12046221.html