力扣2102.序列顺序查询
-
用一个迭代器指向本次该返回的景点
- 考虑每一个get和add对本次该返回的cur的影响
- get使cur++
- add时如果加在cur前,cur- -
-
class SORTracker { set<pair<int,string>> s; set<pair<int,string>>::iterator cur; public: SORTracker() { s.emplace(0,""); cur = s.begin(); } void add(string name, int score) { pair<int,string> p = {-score,name}; s.emplace(p); if(p < *cur) cur --; } string get() { return cur++->second; } };