Algorithm/Problems

[Programmers] 주식가격

Andrew_Kei 2019. 10. 8. 18:48

문제

...더보기

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

제한사항

  • prices의 각 가격은 1 이상 10,000 이하인 자연수입니다.

  • prices의 길이는 2 이상 100,000 이하입니다.

  • 가격이 1초 뒤에 떨어져도, 1초간은 떨어지지 않은 것으로 봅니다.

입출력 예

prices return
[1, 2, 3, 2, 3] [4, 3, 1, 1, 0]

풀이

def solution(input_list):
    result_list = [0] * len(input_list)
    for i in range(len(input_list)):
        for j in range(i+1, len(input_list)):
            if input_list[i] <= input_list[j]:
                result_list[i] += 1
            else:
                result_list[i] += 1
                break
                
    return result_list

 

* stack을 활용한 풀이를 사용하면 연산 시간이 절반 가량 줄어든다고 합니다. 아직 그 풀이법은 제가 알지 못해서, 풀이법에 대해서 알아본 후에 추가로 업로드 하도록 하겠습니다.