본문 바로가기
프로그래머스/2단계

(Python/LV2) 주식가격

by windy7271 2022. 9. 28.
728x90
반응형

문제출처: https://school.programmers.co.kr/learn/courses/30/lessons/42584

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

풀이:

 

def solution(prices):
    res = []
    while prices:
        count = 0
        now = prices.pop(0)
        for i in prices:
            count +=1
            if now > i:
                break
        res.append(count)
    return res
    
# 정확성은 100점이지만
# 효율성면에서 다 틀려버린다

 

정답 코드: 

def solution(prices)
    queue = deque(prices)
    res = []
    while queue:
        price = queue.popleft()
        count = 0
        for q in queue:
            count += 1
            if price > q:
                break
        res.append(count)
    return res

출처: https://codingpractices.tistory.com/entry/Python%ED%8C%8C%EC%9D%B4%EC%8D%AC-%EC%99%9C-%EB%A6%AC%EC%8A%A4%ED%8A%B8%EB%8C%80%EC%8B%A0-%ED%81%90-%EB%8D%B0%ED%81%AC-deque-%EB%A5%BC-%EC%93%B8%EA%B9%8C

 

[Python]파이썬, 왜 리스트대신 큐/ 데크 deque 를 쓸까?

Python deque deque 라는 것은 쉽게 말하자면 파이썬의 list 와 같이 요소들을 한 곳에 담아두는 배열이다. 파이썬에서 큐 queue는 First In First Out (FIFO) 의 방식으로 작동된다. 덱(데큐)는 큐는 큐이지만..

codingpractices.tistory.com

 

반응형

댓글