728x90
반응형
const { stdin } = require('process');
const readline = require('readline');
const rl = readline.createInterface({
input: process.stdin,
output: process.stdout
});
rl.on('line', (line) => {
const input = line.split(',');
let queue = [];
counter = Number(input[0]);
for (let i = 0; i < counter + 1; i++) {
const command = input[i].split(' ');
if (command.length == 1) {
if (command[0] === 'pop') {
if (queue.length == 0) {
console.log(-1);
} else {
console.log(queue[0]);
// console.log("qqq",queue[0]);
// console.log("www",queue[1]);
queue.shift();
}
}
if (command[0] === 'size') {
console.log(queue.length);
}
if (command[0] === 'empty') {
if (queue.length == 0) {
console.log(1);
} else {
console.log(0);
}
}
if (command[0] === 'front') {
if (queue.length == 0) {
console.log(-1);
} else {
console.log(queue[0]);
}
}
if (command[0] === 'back') {
if (queue.length == 0) {
console.log(-1);
} else {
console.log(queue[queue.length - 1]);
}
}
} else {
x = command[1];
queue.push(x);
}
}
rl.close();
}).on('close', () => {
process.exit();
})
위 코드로는 로컬 환경에서 확인했습니다.
let fs = require('fs');
let input = fs.readFileSync('/dev/stdin').toString().split('\n');
let queue = [];
counter = Number(input[0]);
for (let i = 0; i < counter + 1; i++) {
const command = input[i].split(' ');
if (command.length == 1) {
if (command[0] === 'pop') {
if (queue.length == 0) {
console.log(-1);
} else {
console.log(queue[0]);
// console.log("qqq",queue[0]);
// console.log("www",queue[1]);
queue.shift();
}
}
if (command[0] === 'size') {
console.log(queue.length);
}
if (command[0] === 'empty') {
if (queue.length == 0) {
console.log(1);
} else {
console.log(0);
}
}
if (command[0] === 'front') {
if (queue.length == 0) {
console.log(-1);
} else {
console.log(queue[0]);
}
}
if (command[0] === 'back') {
if (queue.length == 0) {
console.log(-1);
} else {
console.log(queue[queue.length - 1]);
}
}
} else {
x = command[1];
queue.push(x);
}
}
위 코드로 백준 알고리즘 제출했습니다.
항상 부족한 부분이나 피드백할 부분을 댓글로 남겨주시면 적극적으로 수용하여 수정하겠습니다.
728x90
반응형
'Study > 알고리즘' 카테고리의 다른 글
[프로그래머스] 기능개발 (Javascript) (0) | 2022.06.03 |
---|---|
[프로그래머스] 로또의 최고 순위와 최저 순위 (Javascript) (0) | 2022.03.23 |
[프로그래머스] K번째수 (Javascript) (0) | 2022.02.19 |
시간 복잡도란? (0) | 2022.01.29 |
[백준] 10828 스택 (JavaScript) (0) | 2021.09.05 |