Coblin
코딩하는 고블린
Coblin
전체 방문자
오늘
어제
  • 분류 전체보기 (38)
    • 일상, 생각, 경험 (2)
    • 알고리즘 (24)
      • 자료구조 (1)
      • 프로그래머스 (19)
      • 구름level (2)
      • 백준 (2)
    • 프로그래밍 언어&프레임워크 (11)
      • java (6)
      • springboot (0)
      • python (3)
      • django (1)
      • sql (1)
    • IT도서 (1)

인기 글

최근 댓글

최근 글

hELLO · Designed By 정상우.
Coblin

코딩하는 고블린

알고리즘/프로그래머스

[프로그래머스] LEVEL2 - 주식가격 (Python)

2020. 5. 28. 20:53
반응형

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

 

코딩테스트 연습 - 주식가격

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

programmers.co.kr

문제설명

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

 

제한조건

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

입출력 예

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

입출력 예 설명

  • 1초 시점의 \1은 끝까지 가격이 떨어지지 않았습니다.
  • 2초 시점의 \2은 끝까지 가격이 떨어지지 않았습니다.
  • 3초 시점의 \3은 1초뒤에 가격이 떨어집니다. 따라서 1초간 가격이 떨어지지 않은 것으로 봅니다.
  • 4초 시점의 \2은 1초간 가격이 떨어지지 않았습니다.
  • 5초 시점의 \3은 0초간 가격이 떨어지지 않았습니다.

answer

def solution(prices):
    answer = [] # 결과를 저장할 빈배열 생성
    for i in range(0, len(prices)): # prices의 길이만큼 배열을 생성에 i에 담는다.
        cnt = 0 # 카운트할 변수 초기화
        for j in range(i + 1, len(prices)): # i + 1 번째부터 prices의 길이만큼 배열을 생성하고 j에 담는다.
            if prices[i] <= prices[j]: # prices[j]가 prices[i]보다 크거나 같으면 가격이 떨어지지 않았으므로
                cnt += 1 # cnt 1을 더해준다.
            else: # 주식값이 떨어지는 초도 1초로 포함해야 하기 때문에 cnt+1해준다.
                cnt += 1
                break
        answer.append(cnt) # prices[i]에 prices[j]비교를 모두 끝나면 answer에 cnt를 넣어준다.
    return answer

 

예제에서 3초시점의 3원이 왜 1인지 헷갈려서 찾다보니 https://programmers.co.kr/questions/12172에서 헷갈리던 문제를 정확히 짚어주어서 풀 수 있었습니다 ㅠ

반응형

'알고리즘 > 프로그래머스' 카테고리의 다른 글

[프로그래머스] LEVEL2 - 올바른 괄호 (Python)  (0) 2020.06.05
[프로그래머스] LEVEL1 - 체육복 (Python)  (0) 2020.06.03
[프로그래머스] LEVEL2 - 튜플 (Python)  (0) 2020.04.27
[프로그래머스] LEVEL3 - 숫자 게임 (Python)  (0) 2020.04.18
[프로그래머스] LEVEL2 - 전화번호 목록 (Python)  (0) 2020.04.16
    '알고리즘/프로그래머스' 카테고리의 다른 글
    • [프로그래머스] LEVEL2 - 올바른 괄호 (Python)
    • [프로그래머스] LEVEL1 - 체육복 (Python)
    • [프로그래머스] LEVEL2 - 튜플 (Python)
    • [프로그래머스] LEVEL3 - 숫자 게임 (Python)
    Coblin
    Coblin
    초보개발자의 공부블로그입니다.

    티스토리툴바