You are viewing a single comment's thread. Return to all comments →
vector<int> freqQuery(const vector<vector<int>>& queries) { std::unordered_map<int, int> db; std::unordered_map<int, int> qdb; vector<int> ret; for (const auto& line : queries) { const int op = line.front(), const key = line.back(); int curr_cnt; switch (op) { case 1: curr_cnt = db[key]; if (curr_cnt) qdb[curr_cnt]--; db[key]++; qdb[curr_cnt+1]++; break; case 2: curr_cnt = db[key]; if (curr_cnt) { qdb[curr_cnt]--; db[key]--; if (curr_cnt > 1) qdb[curr_cnt-1]++; } break; case 3: ret.push_back(min(qdb[key], 1)); break; } } return ret; }
Seems like cookies are disabled on this browser, please enable them to open this website
Frequency Queries
You are viewing a single comment's thread. Return to all comments →