1function build(node, l, r) {
2 if (l === r) { tree[node] = nums[l]; return; }
3 const mid = (l + r) >> 1;
4 build(node*2+1, l, mid);
5 build(node*2+2, mid+1, r);
6 tree[node] = tree[node*2+1] + tree[node*2+2];
7}
8function query(node, l, r, qL, qR) {
9 if (qL <= l && r <= qR) return tree[node];
10 const mid = (l + r) >> 1; let sum = 0;
11 if (qL <= mid) sum += query(node*2+1, l, mid, qL, qR);
12 if (qR > mid) sum += query(node*2+2, mid+1, r, qL, qR);
13 return sum;
14}