250x250
Notice
Recent Posts
Recent Comments
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
Tags
- 막내의막무가내 플러터 flutter
- flutter network call
- 막내의막무가내 안드로이드
- 막내의막무가내 안드로이드 에러 해결
- 막내의 막무가내 알고리즘
- 막내의막무가내 코틀린 안드로이드
- 부스트코스에이스
- 막무가내
- Fragment
- 2022년 6월 일상
- 막내의막무가내 플러터
- 막내의막무가내 알고리즘
- 막내의 막무가내
- 주택가 잠실새내
- 프래그먼트
- 막내의막무가내 프로그래밍
- 막내의막무가내 안드로이드 코틀린
- 막내의막무가내 rxjava
- 막내의막무가내 코볼 COBOL
- 주엽역 생활맥주
- 안드로이드 Sunflower 스터디
- 막내의막무가내 코틀린
- 막내의막무가내 일상
- 부스트코스
- 막내의막무가내 목표 및 회고
- 안드로이드 sunflower
- 프로그래머스 알고리즘
- 막내의막무가내
- 안드로이드
- 막내의막무가내 SQL
Archives
- Today
- Total
막내의 막무가내 프로그래밍 & 일상
[알고리즘] 프로그래머스 프린터 -큐(queue)- 본문
728x90
https://programmers.co.kr/learn/courses/30/lessons/42587?language=kotlin
프로그래머스 LEVEL2 의 프린터 문제를 풀어봤습니다. ㅎㅎ
저번 문제와 마찬가지로 우선순위 큐를 사용합니다.
우선순위 순서대로 계속해서 우선순위를 변경해주고 인덱스는 유지한채로 차례대로 돌려주는게 핵심이었습니다.
1. 우선순위가 높은순으로 큐에 정렬
2. 큐가 비거나 내가 찾을려는 location 을 찾을때까지 반복
3. 내림차순으로 정렬된 우선순위큐의 우선순위 대로 탐색 해당 우선순위를 만나면 큐에서 poll()
4. 내가 찾는 우선순위와 location 이면 끝
풀이는 다음과 같습니다.
[Java]
import java.util.Comparator;
import java.util.PriorityQueue;
class Solution {
public int solution(int[] priorities, int location) {
int answer = 1;
PriorityQueue<Integer> queue = new PriorityQueue<>(Comparator.reverseOrder()); // priorities 값
for (int i : priorities) {
queue.offer(i);
}
while (!queue.isEmpty()) {
for (int i = 0; i < priorities.length; i++) {
if (priorities[i] == queue.peek()) {
if (location == i) {
return answer;
}
answer++;
queue.poll();
}
}
}
return answer;
}
}
[kotlin]
import java.util.*
class Solution {
fun solution(priorities: IntArray, location: Int): Int {
var answer = 1
val queue = PriorityQueue(Comparator.reverseOrder<Int>()) // priorities 값
for (i in priorities) {
queue.offer(i)
}
while (!queue.isEmpty()) {
for (i in priorities.indices) {
if (priorities[i] == queue.peek()) {
if (location == i) {
return answer
}
answer++
queue.poll()
}
}
}
return answer
}
}
감사합니다!
728x90
'알고리즘 > 스택, 큐' 카테고리의 다른 글
[알고리즘] 프로그래머스 기능개발 -스택/큐(stack, queue)- 자바 코틀린 (0) | 2020.10.13 |
---|---|
[알고리즘] 백준 9012 괄호 -스택(stack)- 자바 코틀린 (0) | 2020.10.13 |
[알고리즘] 프로그래머스 쇠막대기 -스택(Stack)- (0) | 2020.05.19 |
[알고리즘] 프로그래머스 짝지어 제거하기 -2017 팁스타운- 스택(Stack) (0) | 2020.05.15 |
[알고리즘] 프로그래머스 주식가격 -스택, 큐- (0) | 2020.03.10 |
Comments