最後我是用兩個map,一個存數字,另一個存數量變化
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
| vector<int> freqQuery(vector<vector<int>> q) { vector<int> ans; map<int,int> m,ct; for(auto a:q){ if(a[0]==1){ ct[m[a[1]]]=max(ct[m[a[1]]]-1,0); m[a[1]]++; ct[m[a[1]]]++; }else if(a[0]==2){ ct[m[a[1]]]=max(ct[m[a[1]]]-1,0); m[a[1]]=max(m[a[1]]-1,0); ct[m[a[1]]]++; }else{ ans.push_back(bool(ct[a[1]])); } } return ans; }
|