미누에요
[백준 10845번] 큐 - JavaScript 본문
728x90
반응형
SMALL
이전에 풀었던 스택 문제와 비슷하다.
이전 스택 코드에서 부분적으로 수정하여 제출하였다.
마찬가지로 JavaScript는 배열에 대하여 shift라는 메서드가 존재한다.
shift 는 첫번째 요소를 반환하는 메서드이다.
따라서 queue를 직접 구현하지 않고 코드를 작성하였다.
소스 코드
const input = require('fs')
.readFileSync('/dev/stdin')
.toString()
.trim()
.split('\n');
const num = +input.shift();
const queue = [];
const result = [];
input.forEach((sentence) => {
const [command, value] = sentence.split(' ');
if (command === 'push') {
queue.push(Number(value));
} else if (command === 'pop') {
result.push(queue.length === 0 ? -1 : queue.shift());
} else if (command === 'size') {
result.push(queue.length);
} else if (command === 'empty') {
result.push(queue.length === 0 ? 1 : 0);
} else if (command === 'front') {
result.push(queue.length === 0 ? -1 : queue[0]);
} else if (command === 'back') {
result.push(queue.length === 0 ? -1 : queue[queue.length - 1]);
}
});
console.log(result.join('\n'));
728x90
반응형
LIST
'알고리즘' 카테고리의 다른 글
[백준 18110번] solved.ac (0) | 2025.02.03 |
---|---|
[백준 11866번] 요세푸스 문제 0 (1) | 2025.02.02 |
[백준 10826번] 스택 - JavaScript (1) | 2025.01.31 |
[백준 10816번] 숫자 카드 2 - JavaScript (0) | 2025.01.30 |
[백준 10773번] 제로 - JavaScript (0) | 2025.01.23 |