프로그래머스/level 2

[프로그래머스] 큰 수 찾기

binaryJournalist 2022. 8. 6. 13:39
반응형

 

출처: 프로그래머스 코딩 테스트 연습, https://school.programmers.co.kr/learn/challenges

def solution(number, k):
    answer = []
    for num in number:
        if not answer:
            answer.append(num)
            continue
        if k > 0:
            while answer[-1] < num:
                answer.pop()
                k -= 1
                if not answer or k <= 0:
                    break
        answer.append(num)
    answer = answer[:-k] if k > 0 else answer
    return ''.join(answer)

 

* 스택을 활용

* k 횟수가 0보다 크고 answer의 마지막보다 큰 수가 나타났을 때 pop

 

참고: https://velog.io/@soo5717/%ED%94%84%EB%A1%9C%EA%B7%B8%EB%9E%98%EB%A8%B8%EC%8A%A4-%ED%81%B0-%EC%88%98-%EB%A7%8C%EB%93%A4%EA%B8%B0-%ED%8C%8C%EC%9D%B4%EC%8D%AC

 

반응형