[알고리즘 프로그래머스] 정수 내림차순으로 배치하기 (LEVEL 1)

(문제) 정수 내림차순으로 배치하기


함수 solution은 정수 n을 매개변수로 입력받습니다.

n의 각 자릿수를 큰것부터 작은 순으로 정렬한 새로운 정수를 리턴해주세요.

예를들어 n이 118372면 873211을 리턴하면 됩니다.

입력설명

n은 1이상 8000000000 이하인 자연수입니다.

출력설명

n의 각 자릿수를 큰것부터 작은 순으로 정렬한 새로운 정수를 리턴

테스트케이스

입력예제 출력예제
118372 873211

해결방법

입력으로 들어오는 숫자를 % 10 하여 1의 자리값을 구해 리스트에 삽입을 한다.

입력으로 들어오는 숫자 자기 자신을 몫만 남는 10으로 나누어 변경한다.

그리고 이것을 입력으로 들어온 값이 0 이 될 때 까지 반복한다.

해당 리스트를 내림차순으로 정렬 후, 문자열로 만들어 join 해 출력한다.


코드

n = int(input())

arr = []

while n:
    arr.append(n%10)
    n = n // 10

arr = "".join(list(map(str, sorted(arr, reverse=True))))

print(arr)

댓글남기기