Python/프로그래머스

[programmers] LV 1. 정수 내림차순으로 배치하기 (Python/파이썬)

이니니 2022. 4. 20. 16:11
문제

함수 solution은 정수 n을 매개변수로 입력받습니다. n의 각 자릿수를 큰것부터 작은 순으로 정렬한 새로운 정수를 리턴해주세요. 예를들어 n이 118372면 873211을 리턴하면 됩니다.

 

제한 조건

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

 

입출력 예

n return
118372 873211

 

▶ my code

def solution(n):
    answer = str(n)
    answer = ''.join(sorted(answer, reverse=True))
    
    return int(answer)

 

▶ 아이디어

str은 a.sort()를 사용할 수 없다.
그러나 sorted만을 사용하기에는 결과 값이 '8', '7', '3', '2', '1', '1' 이 될 것이다. 
그렇기 때문에, ''.join을 추가해주도록 하자.
또한, 이 answer을 그대로 사용한다면 string이기 때문에 "873211"이 출력될 것이다. 그러니 int로 바꿔주자!