티스토리 뷰
https://programmers.co.kr/learn/courses/30/lessons/42626
코딩테스트 연습 - 더 맵게
매운 것을 좋아하는 Leo는 모든 음식의 스코빌 지수를 K 이상으로 만들고 싶습니다. 모든 음식의 스코빌 지수를 K 이상으로 만들기 위해 Leo는 스코빌 지수가 가장 낮은 두 개의 음식을 아래와 같
programmers.co.kr
priority_queue를 사용.
스코빌지수를 우선순위큐에 넣어서 top()의 원소와 pop 한후 그다음 top()의 원소 두개를 섞는다.
우선순위큐의 top이 k이상이 되면 그만 섞으면 된다.
우선순위큐의 크기가 1이 됐는데 top()의 원소가 k이상이 아니라면 모든 음식을 k이상으로 만들수 없으므로 -1을 리턴한다.
우선순위큐의 작은값이 top에 오도록 하려면 아래와 같이 선언한다.
// min heap
priority_queue<int, vector<int> ,greater<int>> pq(scoville.begin(), scoville.end());
'PS' 카테고리의 다른 글
| 프로그래머스. 타겟 넘버 (0) | 2021.09.28 |
|---|---|
| 프로그래머스. 위장 (0) | 2021.09.27 |
| 프로그래머스. 프린터 (0) | 2021.09.25 |
| 프로그래머스. 짝지어 제거하기 (0) | 2021.09.24 |
| 프로그래머스. 전화번호목록 (0) | 2021.09.24 |
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
링크
TAG
- back tracking
- dfs
- C
- graph
- 자료구조
- binary search
- Brute Force
- Spring
- two pointer
- C++
- recursion
- 재귀
- BFS
- Kruskal
- floyd warshall
- DP
- Dijkstra
- Implementation
- 이분탐색
- Stack
- permutation
- Unity
- db
- CSS
- greedy
- Python
- 조합
- priority queue
- Tree
- MVC
| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 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 |
글 보관함
