[Lv2] 큰 수 만들기

이말감·2022년 4월 14일
0

Programmers

목록 보기
9/32

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

문제

링크

풀이

def solution(number, k):
    # k가 숫자 개수 -1일 때
    if k == len(number) - 1 :
        num = list(number)
        return max(num)
    # k가 1일 때
    if k == 1 :
        num = list(number)
        num.remove(min(num))
        return ''.join(num)
    # 스택 사용
    answer = []
    for n in number 
        while True :
            # 맨 처음 숫자이거나 배열에 들어있던 수를 pop했을 때, k가 0일 때
            if k == 0 or len(answer) == 0:
                break
            # 이전에 넣은 수가 현재 수보다 작으면 빼주기
            if answer[-1] < n :
                answer.pop()
                k-=1
            else :
                break
        answer.append(n)
    return ''.join(answer)
profile
전 척척학사지만 말하는 감자에요

0개의 댓글