[알고리즘 프로그래머스] 정수 내림차순으로 배치하기 (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)
댓글남기기