본문 바로가기
develop/coding test

[JS] 프로그래머스 프린터

by hyoE 2021. 9. 9.
반응형

 

문제

 

https://programmers.co.kr/learn/courses/30/lessons/42587

 

코딩테스트 연습 - 프린터

일반적인 프린터는 인쇄 요청이 들어온 순서대로 인쇄합니다. 그렇기 때문에 중요한 문서가 나중에 인쇄될 수 있습니다. 이런 문제를 보완하기 위해 중요도가 높은 문서를 먼저 인쇄하는 프린

programmers.co.kr

 


 

해결 방안 구상

 

  1. priorities의 첫 번째 인자를 추출해 나머지 인자들과 비교한다
  2. 큰 숫자가 있다면 뒤로 보낸다, 큰 숫자가 없다면 제거한 후 answer에다 +1을 더한다.
  3. 지정한 차례가 온다면 answer를 return 한다.

 

해결 답안

 

🧚🏻‍♀️ while 반복문이 익숙하지 않아서 for를 이용해 해결하려해서 시간을 많이 소비했다. 반복문을 for만 사용하는 것이 아니라는 걸 이번 기회에 배울 수 있었다.

 

🧚🏻‍♀️ filter를 사용한 부분에서 처음에 map을 사용해 제대로 된 값을 구할 수 없었다. map을 사용하게 되면 now보다 큰지 'true' 또는 'false'로 나온다는 것을 잊어버리지 않는 좋은 기회가 됐다.

 

다른 사람 풀이

배운 점

 

🧚🏻‍♀️ map을 통해 객체를 만들 수 있다. my : i === location 은 location이 index와 같다면 true 아니면 false로 반환한다

 

🧚🏻‍♀️ some() : 배열 안에 조건이 만족하는 값이 있는지 확인하는 메서드

     ex) let arr = [1, 2, 3]

           arr.some( x => x > 1 ) // true (1 보다 큰 값의 인자가 1개라도 있기 때문에)

           arr.every( x => x > 1) // false (1 보다 큰 값이 아닌 인자가 1개라도 있기 때문에)

반응형

댓글