[프로그래머스 / Python] 주식가격

·2022년 6월 22일
0

프로그래머스_LV2

목록 보기
33/39

💡 문제

주식가격

  • 유형 스택/큐
  • 문제 설명 초 단위로 기록된 주식가격이 담긴 배열 prices가 매개변수로 주어질 때, 가격이 떨어지지 않은 기간은 몇 초인지를 return 하도록 solution 함수를 완성하세요.
  • 제한 조건
    • prices의 각 가격은 1 이상 10,000 이하인 자연수입니다.
    • prices의 길이는 2 이상 100,000 이하입니다.
  • 입력
    • ex1) [1, 2, 3, 2, 3]
  • 출력
    • ex1) [4, 3, 1, 1, 0]

✍🏻 풀이

TRY 1

# TRY 1) 효율성 테스트 미통과

def solution(prices):
    result = []
    for i in range(len(prices)):
        cnt = 0
        for j in prices[i+1:]:
            if prices[i] <= j:
                cnt += 1
            elif prices[i] > j:
                cnt += 1
                break
        result.append(cnt)
    return result

SOL 1

# SOl 1) 리스트를 자르지 말고 j도 인덱스 관점으로 접근하기

def solution(prices):
    result = []
    for i in range(len(prices)):
        cnt = 0
        for j in range(i+1, len(prices)):
            if prices[i] <= prices[j]:
                cnt += 1
            elif prices[i] > prices[j]:
                cnt += 1
                break
        result.append(cnt)
    return result

🌵 정리

깃헙에서 전체 코드 확인하기

0개의 댓글