<--- 리트코드 739. Daliy Temperatures --->
# 문제: 매일의 화씨 온도 리스트 T를 입력받아서, 더 따뜻한 날씨를 위해서는 며칠을 더 기다려야 하는지를 출력하라.
입력
T = [73, 74, 75, 71, 69, 72, 76, 73] |
출력
[1, 1, 4, 2, 1, 1, 0, 0] |
# 풀이
1. 스택 값 비교
1
2
3
4
5
6
7
8
9
10
11
12
13
14
|
def daily_temperatures(s):
answer = [0] * len(T)
stack = []
for i, cur in enumerate(T):
while stack and cur > T[stack[-1]]:
last = stack.pop()
answer[last] = i - last
stack.append(i)
return answer
T = [73, 74, 75, 71, 69, 72, 76, 73]
print(daily_temperatures(T))
|
cs |
'Python' 카테고리의 다른 글
파이썬 알고리즘 인터뷰 - 24. 스택을 이용한 큐 구현 (0) | 2022.01.24 |
---|---|
파이썬 알고리즘 인터뷰 - 23. 큐를 이용한 스택 구현 (0) | 2022.01.24 |
파이썬 알고리즘 인터뷰 - 21. 중복 문자 제거 (0) | 2022.01.23 |
파이썬 알고리즘 인터뷰 - 20. 유효한 괄호 (0) | 2022.01.22 |
파이썬 알고리즘 인터뷰 - 19. 역순 연결 리스트 Ⅱ (0) | 2022.01.22 |