SOLUTION INFO
C++ · main.cpp
class NumberContainers {
private:
unordered_map<int, int> idx;
unordered_map<int, set<int>> nums;
public:
NumberContainers() {}
void change(int index, int number) {
if(idx.find(index) != idx.end()) {
int pn = idx[index];
nums[pn].erase(index);
if(nums[pn].empty()) nums.erase(pn);
}
nums[idx[index] = number].insert(index);
}
int find(int number) {
return nums.count(number) == 0 ? -1 : *nums[number].begin();
}
};
/**
* Your NumberContainers object will be instantiated and called as such:
* NumberContainers* obj = new NumberContainers();
* obj->change(index,number);
* int param_2 = obj->find(number);
*/
SOLUTION DESCRIPTION
풀이 설명
등록된 풀이 설명이 없습니다.