-
[💕 프로그래머스 Python] 더 맵게Algorithm/1일 1코테 2020. 10. 28. 20:56반응형
프로그래머스 연습문제 2단계
더 맵게
🔥
문제
programmers.co.kr/learn/courses/30/lessons/42626
내 풀이
# 1차 시도 - 81점 import heapq def solution(s, k): heapq.heapify(s) answer = 0 while s: if s[0] >= k: return answer a1=heapq.heappop(s) a2=heapq.heappop(s) heapq.heappush(s, a1+(a2*2)) answer += 1 return -1
# 통과 import heapq def solution(s, k): heapq.heapify(s) answer = 0 while s: if s[0] >= k: return answer if len(s) < 2: # s에 하나 남았을 경우 pop을 2번 못해서 error가 난다는 것을 알았다! return -1 a1=heapq.heappop(s) a2=heapq.heappop(s) heapq.heappush(s, a1+(a2*2)) answer += 1 return -1
다른사람 풀이
import heapq as hq def solution(scoville, K): hq.heapify(scoville) answer = 0 while True: first = hq.heappop(scoville) if first >= K: break if len(scoville) == 0: return -1 second = hq.heappop(scoville) hq.heappush(scoville, first + second*2) answer += 1 return answer
반응형'Algorithm > 1일 1코테' 카테고리의 다른 글
[💕 프로그래머스 Python] 올바른 괄호 (0) 2020.10.30 [💕 프로그래머스 Python] 다음 큰 숫자 (0) 2020.10.28 [😭 프로그래머스 Python] 셔틀버스 (0) 2020.10.28 [🤷♀️ 프로그래머스 Python] 뉴스 클러스터링 (0) 2020.10.27 [😭 LeetCode Python] 371. Sum of Two Integers (0) 2020.10.27