diff --git a/hanbkim/priority_queue/11286.cpp b/hanbkim/priority_queue/11286.cpp new file mode 100644 index 0000000..9f6e895 --- /dev/null +++ b/hanbkim/priority_queue/11286.cpp @@ -0,0 +1,34 @@ +#include +#include +#include + +using namespace std; + +priority_queue, vector >, greater > > absolute_queue; + +int smallest_number() +{ + if (absolute_queue.size() == 0) + return (0); + + const pair min_value = absolute_queue.top(); + absolute_queue.pop(); + return (min_value.second); +} + +int main() +{ + int N, input; + + cin >> N; + for (int i = 0; i < N; ++i) + { + cin >> input; + if (input == 0) + { + cout << smallest_number() << '\n'; + continue ; + } + absolute_queue.push(make_pair(abs(input), input)); + } +}