본문 바로가기

알고리즘

[programmers] 주식가격


로직 작성

1. 첫번째 값이랑 2, 3, 4, 5번째 값이랑 비교하기!

2. 비교할 때, for i in range(len(price)-1)이여야함 -> why? 마지막 값은 다음값이랑 비교할게 없음

   -> 그래서 cnt = [0 for _ in range(len(prices))] 맨 처음부터 0으로 두는 것이다.

 

코드

def solution(prices):
    cnt = [0 for _ in range(len(prices))]

    for i in range(len(prices) - 1):
        for j in range(i+1, len(prices)):
            if prices[i] <= prices[j]:
                cnt[i] += 1

            else:
                cnt[i] += 1
                break

    return cnt

 

주의할 점

1. for i, for j할 때 범위 주의! -> i는 마지막 전값까지, j는 마지막 값까지 가야함

                                      -> j는 i 바로 다음 값부터 시작해야함