코테 준비/프로그래머스

[level 1] 명예의 전당(1)

쿠쿠*_* 2023. 5. 4. 23:26

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

 

프로그래머스

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

programmers.co.kr

#틀린 풀이
def solution(k, score):
    stack = [score[0]]
    result=[score[0]]
    
    for i in range(1,len(score)):
        stack.append(score[i])
        if len(stack)>k:
            stack.pop(min(stack))
        result.append(min(stack))
        
                         
    return stack

계속 틀렸다..왜 안될까

핵심포인트

✅stack구조를 사용한다.

✅언제 pop또는 remove할지를 정확한 조건에서 실행시킨다.

#옳은 풀이
def solution(k, score):
    answer = []
    a=[]
    for i in score:
        if len(a)<k:
            a.append(i)
        else:
            if min(a)<i:
                a.remove(min(a))
                a.append(i)
        answer.append(min(a))
    return answer

 

'코테 준비 > 프로그래머스' 카테고리의 다른 글

[level 1] 개인정보 수집 유효기간  (0) 2023.05.09
[level 1] 문자열 나누기  (0) 2023.05.04
[level 1] 기사단원의 무기  (0) 2023.05.03
[level 1] 과일 장수  (0) 2023.05.03
[level 1] 푸드 파이트 대회  (0) 2023.05.03