반응형
Notice
Recent Posts
Recent Comments
Link
관리 메뉴

짧은코딩

프로그래머스) 더 맵게 본문

코딩 테스트(Python)/백준, 프로그래머스

프로그래머스) 더 맵게

5_hyun 2022. 5. 1. 21:16
반응형

https://programmers.co.kr/learn/courses/30/lessons/42626

 

코딩테스트 연습 - 더 맵게

매운 것을 좋아하는 Leo는 모든 음식의 스코빌 지수를 K 이상으로 만들고 싶습니다. 모든 음식의 스코빌 지수를 K 이상으로 만들기 위해 Leo는 스코빌 지수가 가장 낮은 두 개의 음식을 아래와 같

programmers.co.kr

 

내 풀이(질문 봄)

import heapq

def solution(scoville, K):
    answer = 0
    scoville.sort()
    sum = 0
    while scoville[0] < K:
        if len(scoville) <= 1:
            answer = -1
            break
        a = heapq.heappop(scoville)
        b = heapq.heappop(scoville)
        sum = a + (b*2)
        heapq.heappush(scoville, sum)
        answer += 1
        
    return answer

거의 다 맞췄지만 처음에 sort()로 정렬을 해줘야하는 것을 빼 먹었다. sort()를 하면 heapfiy를 안해줘도 된다. 이렇게해서 scoville에 있는 모든 원소가 K보다 커질 때 까지 반복한다. 만약 scoville가 1개가 남았으면 더 이상 진행할 수 없다. 그래서 answer에 -1을 넣고 멈춘다.

반응형

'코딩 테스트(Python) > 백준, 프로그래머스' 카테고리의 다른 글

2178 미로 탐색  (1) 2022.06.04
10815 숫자 카드  (1) 2022.06.02
프로그래머스) 기능개발  (0) 2022.05.01
1766 문제집  (0) 2022.04.15
7662 이중 우선순위 큐  (0) 2022.04.08
Comments