[프로그래머스] 스택/큐 (STACK/QUEUE) - 주식가격 (Python)

Daisy 🌼·2022년 7월 25일
0

프로그래머스

목록 보기
9/36
post-thumbnail

👻 문제

  • 문제 설명
    초 단위로 기록된 주식가격이 담긴 배열 prices가 매개변수로 주어질 때, 가격이 떨어지지 않은 기간은 몇 초인지를 return 하도록 solution 함수를 완성하세요.

  • 제한사항
    prices의 각 가격은 1 이상 10,000 이하인 자연수입니다.
    prices의 길이는 2 이상 100,000 이하입니다.

  • 입출력 예

  • 입출력 예 설명
    1초 시점의 ₩1은 끝까지 가격이 떨어지지 않았습니다.
    2초 시점의 ₩2은 끝까지 가격이 떨어지지 않았습니다.
    3초 시점의 ₩3은 1초뒤에 가격이 떨어집니다. 따라서 1초간 가격이 떨어지지 않은 것으로 봅니다.
    4초 시점의 ₩2은 1초간 가격이 떨어지지 않았습니다.
    5초 시점의 ₩3은 0초간 가격이 떨어지지 않았습니다.
    ※ 공지 - 2019년 2월 28일 지문이 리뉴얼되었습니다.

👩‍💻 My cording

풀이 : deque, while문, if문 활용

from collections import deque
# deque : 앞과 뒤에서 데이터를 처리할 수 있는 양방향 자료형
# 다이얼 형태로 바꿔준다고 연상을 해보자.

def solution(prices):
    answer = []
    d_prices = deque(prices) # 데크형태로 지정
  
    while len(d_prices) != 0:
        count = 0
        first = d_prices.popleft() # pop(0)과 동일
     
        for p in d_prices:
            count += 1 
            if p < first:
                break
        answer.append(count)
    return answer

💡 check point

다시 볼 것

문제출처 : 프로그래머스

profile
세상을 이롭게하는 AI Engineer

0개의 댓글