그리디) lv2 큰 수 만들기

문제

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

프로그램 제작자

코드 중심 개발자를 고용하십시오. 배치 기반 위치 매칭. 프로그래머의 개발자별 프로필에 가입하고 기술 호환성이 좋은 회사와 연결하십시오.

Programmer.co.kr

암호

def solution(number, k):
    number =list(number)
    result=(number.pop(0))
    for i in number:
    	#result의 마지막 요소가 현재 요소보다 작다면
        if result(-1) < i:
            while result and result(-1) < i and k>0:
                result.pop()
                k -= 1
            result.append(i)
        #이미 k개의 수가 제거됨 또는 result의 마지막 요소가 현재 요소보다 큼
        elif k == 0 or result(-1) >= i:
            result.append(i)
    #아직 k개의 수가 제거 안된 경우     
    if k :
    	#result의 뒤 부터 제거
        result=result(:-k)
    answer="".join(result)

    return answer

참조 블로그

https://happy-obok.tistory.com/15

(프로그래머) 큰 숫자 만들기 (Python/Greedy/Greedy)

문제: 프로그래머는 큰 숫자를 만듭니다.

여러분은 숫자에서 k개의 숫자를 제거하여 얻을 수 있는 가장 큰 숫자를 찾고 싶습니다.

예를 들어 숫자 1924에서 두 자리를 빼면 (19, 12, 14, 92, 94, 24)가 됩니다.

happy-obok.tistory.com