Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | ||||
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | 31 |
Tags
- 개발자 취업
- jwt
- 취업리부트코스
- 프로그래머스 이중우선순위큐
- 파이썬
- 개발자부트캠프추천
- jwttoken
- spring batch 5.0
- 커스텀 헤더
- 디자인패턴
- 디자인 패턴
- KPT회고
- TiL
- 전략패턴 #StrategyPattern #디자인패턴
- infcon 2024
- 단기개발자코스
- 99클럽
- DesignPattern
- 구글 OAuth login
- 1주일회고
- 빈 충돌
- JavaScript
- Python
- Spring multimodule
- 빈 조회 2개 이상
- 항해99
- @FeignClient
- 인프콘 2024
- 프로그래머스
- 코딩테스트 준비
Archives
- Today
- Total
m1ndy5's coding blog
99클럽 코테 스터디 5일차 TIL 힙 :프로그래머스 LV.2 더 맵게 with Python 본문
알고리즘 with python/알고리즘 스터디
99클럽 코테 스터디 5일차 TIL 힙 :프로그래머스 LV.2 더 맵게 with Python
정민됴 2024. 5. 24. 11:43https://school.programmers.co.kr/learn/courses/30/lessons/42626
프로그래머스
코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.
programmers.co.kr
문제는 위쪽에서!
힙을 사용하면 쉽게 풀 수 있는 문제였다!
import heapq
def solution(scoville, K):
answer = 0
heapq.heapify(scoville)
while True:
# 가장 맵지 않은, 두번째로 맵지 않은
first, second = heapq.heappop(scoville), heapq.heappop(scoville)
# 가장 맵지 않은게 K를 넘으면 모든 음식 스코빌 지수 K 넘음
if first >= K:
break
heapq.heappush(scoville, first+second*2)
answer += 1
# scoville 리스트에 한개가 남았을 때 K보다 작으면 실패
if len(scoville) == 1:
if scoville[0] < K:
answer = -1
break
return answer
heapq 에서 기본적으로 제공하는 힙은 min heap 이기 때문에 만약 max heap을 사용하고 싶다면 * -1 을해서 사용하면 된다.
Max Heap 예시
import heapq
x = [1, 5, 3, 9, 7]
hq = []
# hq = [-1, -5, -3, -9, -7]
for ele in x:
hq.append(-ele)
# hq = [-9, -7, -5, -3, -1]
heapq.heapify(hq)
# 9 7 5 3 1
while hq:
print(-heapq.heappop(hq))
'알고리즘 with python > 알고리즘 스터디' 카테고리의 다른 글
99클럽 코테 스터디 8일차 TIL 정렬 : 프로그래머스 LV.2 H-Index with Python (0) | 2024.05.27 |
---|---|
99클럽 코테 스터디 7일차 TIL 정렬 :프로그래머스 LV.2 가장 큰 수 with Python (0) | 2024.05.26 |
99클럽 코테 스터디 4일차 TIL 스택/큐 :프로그래머스 LV.2 올바른 괄호 with Python (0) | 2024.05.23 |
99클럽 코테 스터디 3일차 TIL 스택/큐 : 프로그래머스 LV.2 기능개발 with Python (0) | 2024.05.22 |
99클럽 코테 스터디 2일차 TIL 해시 : 프로그래머스 LV.2 의상 with Python (0) | 2024.05.21 |