Why I got Runtime Error on first test w/o vector reserve and got Accepted with reserve?
The only difference is line 77 (if you open it in text editor).
Also, it passes test on local machine even without reserve statement.
RE
ImplicitSegmentTree(int l, int r) {
lb = l; rb = r;
n = r-l+1;
next = 0;
// TODO Change
// nodes.reserve(4831707);
nodes.push_back(Node());
root = &nodes[next++];
}
OK
ImplicitSegmentTree(int l, int r) {
lb = l; rb = r;
n = r-l+1;
next = 0;
// TODO Change
nodes.reserve(4831707);
nodes.push_back(Node());
root = &nodes[next++];
}
And last: the memory limit isn't a problem with this solution, because even with reserve(1e7) it works fine.