이중 우선 순위 큐https://programmers.co.kr/learn/courses/30/lessons/42628
이중 우선 순위 큐, 힙 문제지만 그냥 풀어도 풀리는 문제.
function solution(operations) {
let ans = [];
let queue = [];
operations.map((op) => {
if (op[0] === "I") {
let temp = parseInt(op.split(" ")[1]);
queue.push(temp);
} else if (op === "D -1") {
if (queue.length === 0) return;
let idx = queue.indexOf(Math.min.apply(null, queue));
queue.splice(idx, 1);
} else if (op === "D 1") {
if (queue.length === 0) return;
let idx = queue.indexOf(Math.max.apply(null, queue));
queue.splice(idx, 1);
}
});
if (queue.length === 0) {
ans.push(0);
ans.push(0);
} else {
ans.push(Math.max.apply(null, queue));
ans.push(Math.min.apply(null, queue));
}
return ans;
}