
섞은 음식의 스코빌 지수 = 가장 맵지 않은 음식의 스코빌 지수 + (두 번째로 맵지 않은 음식의 스코빌 지수 * 2)

코딩테스트 연습 - 더 맵게 | 프로그래머스 스쿨 (programmers.co.kr)
프로그래머스
코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.
programmers.co.kr
나의 코드
def solution(scoville, k):
answer = 0
scoville.sort()
while scoville[0]<k:
answer+=1
new_scoville= scoville.pop(0)+(scoville.pop(0)*2)
scoville.append(new_scoville)
scoville.sort()
#print(scoville)
print(answer)
return answer
solution([1, 2, 3, 9, 10, 12], 7)

수정한 코드
import heapq
def solution(scoville, k):
answer = 0
#일다 스코빌지수 오름차순으로 정렬부터
scoville.sort()
while scoville[0] < k:
#스코빌지수를 k이상으로 만들 수 없는 경우
if len(scoville) == 1:
return -1
else:
answer+=1
heapq.heappush(scoville, heapq.heappop(scoville)+(heapq.heappop(scoville)*2))
#print(scoville)
return answer
solution([1,2,3,9,10,12], 7)

성공!!!!
'코딩테스트 파이썬 > 파이썬 프로그래머스 2단계' 카테고리의 다른 글
| 오픈채팅방 (0) | 2023.07.21 |
|---|---|
| 주차 요금 계산 (0) | 2023.07.20 |
| [3차] n진수 게임 (0) | 2023.07.15 |
| [3차] 압축 (0) | 2023.07.15 |
| k진수에서 소수 개수 구하기 (0) | 2023.07.14 |