[프로그래머스 | Python] 큰 수 만들기

게으른 완벽주의자·2023년 1월 26일
0

프로그래머스

목록 보기
12/83
post-custom-banner

프로그래머스_큰 수 만들기

number에서 최소 값의 위치에 따라 삭제하는 코드를 짰는데, 예시로만 통과하고 테스트는 통과하질 못 하더라
그래서 다른 분의 코드 를 참고해서 문제를 풀었다

가장 키포인트는 answer에 넣은 마지막 숫자가 number의 num보다 작은 경우에는 answer에서 pop을 해줘야한다는거다

그리고 k가 0이 아니면 제거해야하는 숫자들이 남아있다는 의미이고 answer의 뒷 부분에 남아있을 것이므로 answer[:-k]까지가 답으로 사용하는 숫자들이다

def solution(number, k):
    answer = []
    for num in number:       
        while answer and k>0 and answer[-1] < num:
            answer.pop()
            k-=1
        answer.append(num)
    
    if k==0:
        return ''.join(answer)
    else:
        return ''.join(answer[:-k])
profile
데이터를 공부하고 있습니다
post-custom-banner

0개의 댓글