0
1
mirror of https://git.sb/baoshuo/OI-codes.git synced 2024-12-27 05:51:58 +00:00
OI-codes/Luogu/P5250/P5250.cpp

46 lines
1.3 KiB
C++
Raw Normal View History

#include <bits/stdc++.h>
using namespace std;
int main() {
map<int, int> m;
2021-11-19 09:01:13 +00:00
int i, j, n, x, y;
cin >> n;
for (i = 0; i < n; i++) {
cin >> x >> y;
if (x == 1) {
if (m.count(y)) {
cout << "Already Exist" << endl;
2021-11-19 09:01:13 +00:00
} else {
m[y] = 1;
}
2021-11-19 09:01:13 +00:00
} else {
if (m.empty()) {
cout << "Empty" << endl;
2021-11-19 09:01:13 +00:00
} else if (m.count(y)) {
m.erase(y);
cout << y << endl;
2021-11-19 09:01:13 +00:00
} else {
m[y] = 1;
map<int, int>::iterator it = m.find(y);
map<int, int>::iterator it2 = it;
it++;
if (it2 == m.begin()) {
cout << it->first << endl;
m.erase(it);
2021-11-19 09:01:13 +00:00
} else if (it == m.end()) {
cout << (--it2)->first << endl;
m.erase(it2);
2021-11-19 09:01:13 +00:00
} else if (y - (--it2)->first > it->first - y) {
cout << it->first << endl;
m.erase(it);
2021-11-19 09:01:13 +00:00
} else {
cout << it2->first << endl;
m.erase(it2);
}
m.erase(y);
}
}
}
return 0;
}