이카's
let fs = require('fs');
let input = fs.readFileSync('/dev/stdin').toString().split('\n');

let stackCount = Number(input[0]);


function solution() {
  let stack = [];
  let result = 0;

  function PUSH (num) {
    return stack.concat(num);
  };

  function TOP() {
    if (stack.length === 0) {
      return -1;
    } else {
      result = stack.slice(-1, );
    }
    return result;
  };

  function SIZE () {
    return stack.length;
  };

  function EMPTY () {
    if (stack.length === 0) {
      return 1;
    } else {
      return 0;
    }
  };

  function POP () {
    if (stack.length === 0) {
      return -1;
    } else {
      result = stack.slice(-1, );
      stack = stack.slice(0, -1);
    } 
    return result;
  };

  for (let i = 1; i <= stackCount; i++) {
    let command = input[i].split(' ');
    if (command[0] === 'push') {
      PUSH(command[1]);
    } else if (command[0] === 'top') {
      console.log(TOP());
    } else if (command[0] === 'size') {
      console.log(SIZE());
    } else if (command[0] === 'empty') {
      console.log(EMPTY());
    } else {
      console.log(POP());
    }
  }
};

solution();

왜 시간초과가 나왔을까..?

반응형
profile

이카's

@Edan Cafe ☕

포스팅이 좋았다면 "좋아요❤️" 또는 "구독👍🏻" 해주세요!