File tree 1 file changed +4
-5
lines changed
1 file changed +4
-5
lines changed Original file line number Diff line number Diff line change @@ -21,8 +21,7 @@ class MaxStack {
21
21
int pop () {
22
22
const auto & it = idx_to_val_.begin ();
23
23
const auto val = it->second ;
24
- const auto idx = it->first ;
25
- remove (idx, val);
24
+ remove (val);
26
25
return val;
27
26
}
28
27
@@ -37,16 +36,16 @@ class MaxStack {
37
36
int popMax () {
38
37
const auto & it = val_to_idxs_.begin ();
39
38
const auto val = it->first ;
40
- const auto idx = val_to_idxs_[val].back ();
41
- remove (idx, val);
39
+ remove (val);
42
40
return val;
43
41
}
44
42
45
43
private:
46
44
map<int , int , greater<int >> idx_to_val_;
47
45
map<int , vector<int >, greater<int >> val_to_idxs_;
48
46
49
- void remove (const int idx, const int val) {
47
+ void remove (const int val) {
48
+ const auto idx = val_to_idxs_[val].back ();
50
49
val_to_idxs_[val].pop_back ();
51
50
if (val_to_idxs_[val].empty ()) {
52
51
val_to_idxs_.erase (val);
You can’t perform that action at this time.
0 commit comments