문제 링크입니다: https://programmers.co.kr/learn/courses/30/lessons/42626
최소 힙을 이용하여 푸는 문제였습니다.
알고리즘은 아래와 같습니다.
1. 최소 힙을 생성해주고 scoville 벡터에 있는 값들을 전부 넣어줍니다. 이때, scoville 벡터에 있는 값들이 모두 K 이상일 경우 조건을 충족하므로 0을 반환해줍니다.
2. 문제 조건에 따라 음식을 섞어주고 음식을 섞은 뒤 모든 음식이 K 이상인지 확인합니다.
2.1 모두 K 이상이라면 섞은 횟수를 반환해주고
2.2 하나라도 K 미만이라면 다시 2번 과정을 반복해줍니다.
3. 2번 과정을 전부 실행해서 음식이 하나 남았는데도 K 이상이 아니라면 -1을 반환해줍니다.
개발환경:Visual Studio 2017
지적, 조언, 질문 환영입니다! 댓글 남겨주세요~
반응형
'알고리즘 > programmers' 카테고리의 다른 글
[Programmers 코딩테스트 고득점 Kit] 이중우선순위큐 (0) | 2021.09.23 |
---|---|
[Programmers 코딩테스트 고득점 Kit] 디스크 컨트롤러 (0) | 2021.09.23 |
[Programmers 코딩테스트 고득점 Kit] 도둑질 (0) | 2021.09.22 |
[Programmers 코딩테스트 고득점 Kit] 등굣길 (0) | 2021.09.22 |
[Programmers 코딩테스트 고득점 Kit] 정수 삼각형 (0) | 2021.09.22 |