π λ¬Έμ
νλ‘κ·Έλλ¨Έμ€ μ΄μ€μ°μ μμν
β οΈ λ°±μ€ - 골λ IV μ΄μ€ μ°μ μμ νμ λμΌν λ¬Έμ λ€.
νλ‘κ·Έλλ¨Έμ€μ μ±μ νκ²½μ λΉκ΅μ λμ¨νκΈ°μ(?) λ°°μ΄μ
sort
λλshift
,splice
μ²λΌ μκ° λ³΅μ‘λκ° λμ λ©μλλ₯Ό λ°λ³΅ν΄μ μ¬μ©ν΄λ ν΄κ²°λλ€. λ°±μ€μμ μ°μ μμ ν ν΄λμ€λ‘ ν΄κ²°νμκΈ°μ μ¬κΈ°μ λ°°μ΄μ λ©μλλ§μ νμ©ν΄ λ¬Έμ λ₯Ό ν΄κ²°νμλ€.
ꡬνν΄μΌ νλ κ²μ
λͺ λ μ΄μ λ°λΌ μ΅λκ°μ μμ νκ±°λ μ΅μκ°μ μμ ν΄μΌ νλ€. νλμ λ°°μ΄μ λ°μ΄ν°κ° μ½μ λ λλ§λ€ μ€λ¦μ°¨μμΌλ‘ μ λ ¬ν΄μ€λ€. μμ λͺ λ Ήμ λ°λΌ μ΅μκ° μμ λ κ°μ₯ 첫 λ²μ§Έ μμλ₯Ό μ κ±°νκ³ , μ΅λκ° μμ λ κ°μ₯ λ§μ§λ§ μμλ₯Ό μ κ±°νλ€.
μ€λ¦μ°¨μμΌλ‘ μ λ ¬νκΈ°μ λ°°μ΄μ λ¨μ μ΅μκ°κ³Ό μ΅λκ°μ κ°κ° 첫 λ²μ§Έμ λ§μ§λ§ μμλ₯Ό λ°ννλ©΄ λλ€.
πΉ μ½λ
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
const solution = (operations) => {
const heap = [];
operations.forEach((operation) => {
const [command, num] = operation.split(" ");
console.log(operation);
if (command === "I") {
heap.push(+num);
heap.sort((a, b) => a - b);
} else if (+num === 1) {
heap.pop();
} else if (+num === -1) {
heap.shift();
}
});
return heap.length ? [Math.max(...heap), Math.min(...heap)] : [0, 0];
};