1class SmallestInfiniteSet {2public:3int cur;4set<int> s;5SmallestInfiniteSet() {6cur = 1;7}89int popSmallest() {10if (s.size()) {11int res = *s.begin();12s.erase(res);13return res;14} else {15cur += 1;16return cur - 1;17}18}1920void addBack(int num) {21if (cur > num) s.insert(num);22}23};