반응형
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
- kafka 설치
- ORACLE MSSQL차이
- 런타임데이터영역
- EMR 구조
- 카프카
- Spark
- 서버간 복사
- 하둡에코시스템
- freenom
- ORACLE문법
- 하둡
- 데이터 수집
- 프로그래머스힙
- 빌드도구
- lazy evaluation
- 하둡1.0
- 데이터파이프라인
- 지연연산
- Spark 최적화
- 데이터베이스복사
- Catalyst Optimizer
- 프로그래머스 큰 수 만들기
- 실행엔진
- 스파크
- 하둡2.0
- AWS Crawler
- 문맥교환
- Databricks
- 프로그래머스
- 데이터엔지니어링
Archives
- Today
- Total
띵유로그
[프로그래머스][힙]더맵게 본문
반응형
내 풀이
def solution(scoville, K):
answer = 0
import heapq
heapq.heapify(scoville)
while True:
if scoville[0] >= K:
break
elif len(scoville) == 1:
answer = -1
break
f = heapq.heappop(scoville)
s = heapq.heappop(scoville)
mix = f + (s * 2)
answer = answer + 1
heapq.heappush(scoville, mix)
return answer
으악...완전 이상한 짓을 하고 있었다.
다 풀어놓고 헤멘 이유 두가지.
1. heap을 heqp로 오타
2. 음식을 섞을 떄 두번쨰로 덜 매운것에 가중*2가 된다는걸 잊었다.
그래서 초기조건으로 모든 음식 맵기의 합이 K보다 작으면 -1을 return 해버렸다.
배운점
1. 우선순위 큐를 heap으로 구현
-> 파이썬 heapq
-> heapq.heapify(list) : list 를 heapq로 바꿈
-> heapq.heappush(list, 원소)
-> heapq.heappop(list)
2. max heap을 구현할때는 모든 원도에 -1을 붙이고 절댓값으로 계산
반응형
'알고리즘' 카테고리의 다른 글
[프로그래머스][정렬]가장 큰 수 (0) | 2020.08.28 |
---|---|
[프로그래머스][정렬]K번째 수 (0) | 2020.08.24 |
[프로그래머스][큐][프린터] (0) | 2020.08.23 |
[프로그래머스][스택][기능개발] (0) | 2020.08.16 |
[프로그래머스][해시][위장] (0) | 2020.08.04 |
Comments