블로그

[프로그래머스, 자바스크립트] 알고리즘-40 프린터 본문

알고리즘

[프로그래머스, 자바스크립트] 알고리즘-40 프린터

wooluck 2020. 1. 2. 21:47

출처 : 프로그래머스 알고리즘 코딩테스트 Level.2

https://programmers.co.kr/learn/courses/30/lessons/42587?language=javascript

 

1. 중요도 순으로 인쇄하기 때문에 중요도를 내림차 순으로 정렬한 배열이 필요하다.
2. 요청한 문서의 위치를 담을 변수가 필요하다.

3. 이후 반복문이나 재귀함수를 사용한다.

 

답안

function solution(priorities, location) {
  let cnt = 0;
  let max = priorities
    .slice()
    .sort()
    .reverse();
  do {
    if (priorities[0] == max[cnt]) {
      cnt++;
      if (location === 0) {
        return cnt;
      }
    } else {
      priorities.push(priorities[0]);
    }
    priorities.splice(0, 1);
    location = location - 1 >= 0 ? location - 1 : priorities.length - 1;
  } while (priorities.length > 0);
}

 

 난이도가 오를 수록 지문의 양이 길어지기 때문에 level 2부터는 문제를 생략했다.

 

 

Comments