Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
Tags
- 프로그래머스
- 러닝 자바스크립트
- 레인지 슬라이더
- 회고의 회고
- 개인 프로젝트
- AWS
- 알고리즘
- 자바스크립트 객체
- 자바
- 리액트
- npm
- 토이 프로젝트
- 우아한테크캠프 4기
- ES6
- 코드스쿼드
- 우아한테크캠프
- 우아한형제들
- 모듈 배포하기
- 주간 회고
- 함수
- 자바스크립트
- 우아한테크코스
- 토이프로젝트
- 네이버 테크 콘서트
- 인사이드 자바스크립트
- html
- express
- Hello Coding HTML5+CSS3
- CSS
- toast
Archives
- Today
- Total
블로그
[프로그래머스, 자바스크립트] 알고리즘-40 프린터 본문
출처 : 프로그래머스 알고리즘 코딩테스트 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부터는 문제를 생략했다.
'알고리즘' 카테고리의 다른 글
[프로그래머스, 자바스크립트] 알고리즘-42 쇠막대기 (0) | 2020.01.04 |
---|---|
[프로그래머스, 자바스크립트] 알고리즘-41 124 나라의 숫자 (0) | 2020.01.04 |
[프로그래머스, 자바스크립트] 알고리즘-39 다트 게임 (0) | 2019.12.31 |
[프로그래머스, 자바스크립트] 알고리즘-38 비밀지도 (0) | 2019.12.31 |
[프로그래머스, 자바스크립트] 알고리즘-37 실패율 (0) | 2019.12.30 |
Comments