티스토리 뷰

내가 과거에 풀다 실패했던 문제;;

처음부터 기선제압당함

아마 문제가 어렵기보단 C#으로 메모리 초과나 시간 초과를 피할 수 없었던것으로 추정된다.

 

그치만 정말 쉬운 문제였음.

앞서 푼 문제랑 기존 구성이 비슷한데 훨씬 쉬움.

 

function solution(inputArray) {
  let count = +inputArray[0];
  let commandLine = [];
  let resultArray = [];
  let queue = [];

  for (let i = 1; i < count + 1; i++) {
    commandLine = inputArray[i].split(" "); //commandLine = ['push','1'] or ['front']
    switch (commandLine[0]) {
      case "push":
        queue.push(commandLine[1]);
        break;
      case "pop":
        if (queue.length === 0) {
          resultArray.push(-1);
        } else {
          resultArray.push(queue[0]);
          queue.splice(0, 1);
        }
        break;
      case "size":
        resultArray.push(queue.length);
        break;
      case "empty":
        if (queue.length === 0) {
          resultArray.push(1);
        } else {
          resultArray.push(0);
        }
        break;
      case "front":
        if (queue.length === 0) {
          resultArray.push(-1);
        } else {
          resultArray.push(queue[0]);
        }
        break;
      case "back":
        if (queue.length === 0) {
          resultArray.push(-1);
        } else {
          resultArray.push(queue[queue.length - 1]);
        }
        break;
    }
  }
  console.log(resultArray.join("\n"));
}

 

 

'■ 알고리즘 > ◻ 백준' 카테고리의 다른 글

[Nodejs]10866번: 덱  (0) 2022.08.03
[Nodejs]1158번: 요세푸스 문제  (0) 2022.08.03
[Nodejs]1406번: 에디터  (0) 2022.08.02
[Nodejs]1874번: 스택 수열  (0) 2022.07.23
[Nodejs]9012번: 괄호  (0) 2022.07.22
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2025/07   »
1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30 31
글 보관함