| 27 | else return t; } |
| 28 | return NULL; } |
| 29 | node* insert(node *t, int x, int y) { |
| 30 | if (find(t, x) != NULL) return t; |
| 31 | pair<node*,node*> res = split(t, x); |
| 32 | return merge(res.first, |
| 33 | merge(new node(x, y), res.second)); } |
| 34 | node* erase(node *t, int x) { |
| 35 | if (!t) return NULL; |
| 36 | if (t->x < x) t->r = erase(t->r, x); |
no test coverage detected