** 알고리즘 오답노트 07

박경준·2021년 6월 14일
0

알고리즘 문제풀이

목록 보기
8/24

주식 가격

  • 틀린 부분 : if price > p

  • 틀린 이유 : 문제 이해를 잘못함;;
    3초 시점의 ₩3은 1초뒤에 가격이 떨어집니다. 따라서 1초간 가격이 떨어지지 않은 것으로 봅니다.
    -> 가격이 떨어졌다면 가격이 떨어진 지점까지의 거리를 구해야함.

  • deque 참고자료

from collections import deque
# 파이썬의 deque(double ended queue, 입구와 출구가 양쪽 동시 사용)를 이용해 문제를 해결하라고 한다.
# 파이썬 언어의 특성때문인데, queue를 사용하면 타임아웃되기 쉽다.

def solution(prices):
  prices = deque(prices)
  result = []
  
  for _ in range(len(prices)-1):
    price = prices.popleft()
    count = 0

    for p in prices:
      if price > p: # 현재 가격이 다음 시간초보다 커지면 1초간만 더 가격이 지속했다고보고 가격이 떨어졌으므로 break
        count += 1
        break
      else:
        count += 1
              
      result.append(count)
  result.append(0)
  return result
profile
빠굥

0개의 댓글