[백준 1406] 스택 - 에디터

김민지·2024년 1월 28일
0

냅다 시작 백준

목록 보기
114/118

✨ 문제 ✨


✨ 정답 ✨

 const fs = require('fs'); 
 let input = fs.readFileSync("/dev/stdin").toString().trim().split('\n');

input = input.map((el) => el.trim())
let leftStack = input.shift().split('');
let rightStack = [];
const M = +input.shift();

for (let i = 0; i < M; i++) {
  const [command, value] = input[i].split(' ');
  switch (command) {
    case "L":
      if (leftStack.length !== 0) {
        rightStack.push(leftStack.pop());
      }
      break;

    case "D":
      if (rightStack.length !== 0) {
        leftStack.push(rightStack.pop());
      }
      break;

    case "B":
      if (leftStack.length != 0) {
        leftStack.pop();
      }
      break;

    case "P":
      leftStack.push(value);
      break;
  }
}

let answer=leftStack.concat(rightStack.reverse()).join('')
console.log(answer)


🧵 참고한 정답지 🧵

💡💡 기억해야 할 점 💡💡

profile
이건 대체 어떻게 만든 거지?

0개의 댓글