알고리즘
백준 1655번 가운데를 말해요 C++
영춘권의달인
2022. 5. 24. 12:08
multiset을 이용해서 자동으로 정렬되게 하고, 입력에 따라서 iterator을 조절해 가면서 문제를 해결하였다.
#include <iostream>
#include <string>
#include <vector>
#include <math.h>
#include <algorithm>
#include <utility>
#include <stack>
#include <queue>
#include <math.h>
#include <set>
#include <map>
#include <unordered_map>
#include <unordered_set>
#include <iomanip>
using namespace std;
using ll = long long;
int main() {
ios_base::sync_with_stdio(false);
cin.tie(NULL);
cout.tie(NULL);
int n;
cin >> n;
multiset<int> s;
auto it = s.begin();
for (int i = 1; i <= n; i++) {
int input;
cin >> input;
s.insert(input);
if (s.size() == 1) it = s.begin();
else {
if (input < *it) --it;
}
if (i % 2 == 1 && s.size() != 1) {
++it;
}
cout << *it << "\n";
}
};