(int jobi, int jobv, int l, int r, int i)
| 259 | } |
| 260 | |
| 261 | public static int add(int jobi, int jobv, int l, int r, int i) { |
| 262 | if (i == 0) { |
| 263 | i = ++cntt; |
| 264 | } |
| 265 | if (l == r) { |
| 266 | sum[i] += jobv; |
| 267 | } else { |
| 268 | int mid = (l + r) >> 1; |
| 269 | if (jobi <= mid) { |
| 270 | ls[i] = add(jobi, jobv, l, mid, ls[i]); |
| 271 | } else { |
| 272 | rs[i] = add(jobi, jobv, mid + 1, r, rs[i]); |
| 273 | } |
| 274 | sum[i] = sum[ls[i]] + sum[rs[i]]; |
| 275 | } |
| 276 | return i; |
| 277 | } |
| 278 | |
| 279 | public static int query(int jobl, int jobr, int l, int r, int i) { |
| 280 | if (i == 0) { |