문제 링크입니다: https://school.programmers.co.kr/learn/courses/30/lessons/42891
우선순위 큐를 사용해 풀 수 있는 문제였습니다.
알고리즘은 아래와 같습니다.
1. 전체 음식을 다 먹는 시간이 k보다 작거나 같다면 더 먹을 음식이 없으므로 -1을 반환합니다.
2. 음식의 남은 시간을 기준으로 오름차순 정렬하기 위해 최소 힙을 선언하고 {음식 섭취 시간, 음식 인덱스} 형식으로 저장합니다.
3. k초 안에 모두 섭취할 수 있는 음식을 2번에서 선언한 우선순위 큐에서 제거해 줍니다.
4. 우선순위 큐에 남은 음식을 번호 기준으로 오름차순 정렬한 뒤 모듈러 연산을 통해 답을 구해줍니다.
개발환경: Programmers IDE
지적, 조언, 질문 환영합니다! 질문 남겨주세요~
반응형
'알고리즘 > programmers' 카테고리의 다른 글
[Programmers] 수식 복원하기 (0) | 2024.10.06 |
---|---|
[Programmers] 퍼즐 게임 챌린지 (0) | 2024.09.30 |
[Programmers] 조건에 맞는 사원 정보 조회하기 (0) | 2024.06.02 |
[Programmers] 에어컨 (0) | 2024.05.30 |
[Programmers] 분기별 분화된 대장균의 개체 수 구하기 (2) | 2024.05.25 |