이 문제의 단서는 1, 문제가 너무 쉽다, 2. 10,000,0000이란 최대 이기 때문에 뭔가 이상하다는 느낌은 있었다.
그런데 이게 stack 문제일줄은.....솔직히 접근 방법을 아직도 모르겠다....
def solution(numbers):
stack = []
result = [-1] * len(numbers)
for i in range(len(numbers)):
while stack:
if numbers[stack[-1]] >= numbers[i]: break
result[stack.pop()] = numbers[i]
stack.append(i)
print(stack)
return result
'코딩 테스트 > 코딩테스트 - 학습' 카테고리의 다른 글
까먹는 코테 문법2 (0) | 2023.02.16 |
---|---|
이분 탐색 & 매개변수 탐색 & 투 포인터 탐색 (0) | 2023.02.02 |
[DP] 누적합 알고리즘 (0) | 2023.01.31 |
DP (0) | 2023.01.30 |
자주 잊는 코딩테스트 문법 (0) | 2023.01.29 |