프로그래머스/LV2

[프로그래머스 Lv2,python]- 주식가격

chyam_eun 2025. 1. 24. 11:38

https://school.programmers.co.kr/learn/courses/30/lessons/42584#

 

프로그래머스

SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프

programmers.co.kr

def solution(prices):
    le=len(prices)
    an= [0]*le # 0으로 초기화
    for i in range(le):
        cnt=0 
        for j in range(i+1,le):
            if prices[i]<=prices[j]: # 뒤의 수가 더 클때
                cnt+=1 # 증가
            else:
                cnt+=1 # 작을때 증가시킨후에 멈추기
                break
        an[i]=cnt # cnt저장
    return an

위 코드는 통과한 코드이고 아래는 문제를 잘못 이해해서 틀렸던 코드이다. 

처음에는 기준을 잡아서 마지막까지 숫자를 비교하여 작아진 횟수를 구했다.

def solution(prices):
    le=len(prices)
    an= [0]*le
    for i in range(le):
        cnt=0
        for j in range(i+1,le):
            if prices[i]>prices[j]: # i인덱스가 더 클때
                cnt+=1 # 증가
        an[i]=le-i-cnt-1 
    return an