@@ -22,10 +22,10 @@ struct PST {
2222 root_l (root_l), root_r(root_r), roots(1 ),
2323 tree (1 , {0LL , 0 , 0 }) {}
2424 void update (int idx, ll change, int version) {
25- roots.push_back (update_impl (idx, change, root_l,
25+ roots.push_back (update (idx, change, root_l,
2626 root_r, roots[version]));
2727 }
28- int update_impl (int idx, ll change, int tl, int tr,
28+ int update (int idx, ll change, int tl, int tr,
2929 int v) {
3030 if (tr - tl == 1 ) {
3131 tree.emplace_back (tree[v].sum + change, 0 , 0 );
@@ -35,21 +35,21 @@ struct PST {
3535 int lch = tree[v].lch ;
3636 int rch = tree[v].rch ;
3737 if (idx < tm)
38- lch = update_impl (idx, change, tl, tm, lch);
39- else rch = update_impl (idx, change, tm, tr, rch);
38+ lch = update (idx, change, tl, tm, lch);
39+ else rch = update (idx, change, tm, tr, rch);
4040 tree.emplace_back (tree[lch].sum + tree[rch].sum , lch,
4141 rch);
4242 return sz (tree) - 1 ;
4343 }
4444 ll query (int l, int r, int version) { // [l, r)
45- return query_impl (l, r, root_l, root_r,
45+ return query (l, r, root_l, root_r,
4646 roots[version]);
4747 }
48- ll query_impl (int l, int r, int tl, int tr, int v) {
48+ ll query (int l, int r, int tl, int tr, int v) {
4949 if (v == 0 || r <= tl || tr <= l) return 0 ;
5050 if (l <= tl && tr <= r) return tree[v].sum ;
5151 int tm = tl + (tr - tl) / 2 ;
52- return query_impl (l, r, tl, tm, tree[v].lch ) +
53- query_impl (l, r, tm, tr, tree[v].rch );
52+ return query (l, r, tl, tm, tree[v].lch ) +
53+ query (l, r, tm, tr, tree[v].rch );
5454 }
5555};
0 commit comments