호기심 많은 분석가
[프로그래머스] 스택_큐 - 주식가격 (Python) 본문
def solution(prices):
answer = []
for i in range(len(prices)) :
for j in range(i, len(prices)) :
if prices[i] > prices[j] :
answer.append(j-i)
break
if j==len(prices)-1 :
answer.append(j-i)
return answer
내 풀이
예상치도 못하게 이중 for문으로 해결돼서 놀랐다. 택한 원소 이후로 그것보다 작은 게 없으면 마지막 원소 위치 - 택한 원소 위치를 입력해줬고, 있다면 그 위치까지의 거리를 입력해줌. 레벨 2 치고는 쉬운 편이었다.
다른 풀이
from collections import deque
def solution(prices):
answer = []
prices = deque(prices)
while prices:
c = prices.popleft()
count = 0
for i in prices:
if c > i:
count += 1
break
count += 1
answer.append(count)
return answer
알고리즘은 거의 흡사하다. 스택/큐를 사용해서 풀고 싶다면 이렇게 해결할 수 있을 것 같다.
'Coding > Coding Test & Algorithm' 카테고리의 다른 글
[프로그래머스] 완전탐색 - 소수 찾기 (Python) (0) | 2021.06.28 |
---|---|
[프로그래머스] 완전탐색 - 카펫 (Python) (0) | 2021.06.28 |
[프로그래머스] 정렬 - H-Index (0) | 2021.06.25 |
[프로그래머스] 정렬 - 가장 큰 수 (Python) (0) | 2021.06.25 |
[프로그래머스] 정렬 - K번째수 (Python) (0) | 2021.06.25 |