| 27 | T[i] = segment(vi(T[i].arr.begin(), T[i].arr.begin() + at)); |
| 28 | return i + 1; } |
| 29 | void insert(int at, int v) { |
| 30 | vi arr; arr.push_back(v); |
| 31 | T.insert(T.begin() + split(at), segment(arr)); } |
| 32 | void erase(int at) { |
| 33 | int i = split(at); split(at + 1); |
| 34 | T.erase(T.begin() + i); } |