본문 바로가기

Python Coding Test

[프로그래머스/파이썬] Lv.1 정수 내림차순으로 배치하기

문제 설명

함수 solution : 정수 n을 매개변수로 입력 받아 n을 큰것부터 작은 순으로 정렬한 새로운 정수로 리턴.

예) n : 118372   ㅡ>  873211 리턴

제한사항

  • n : 1 이상 8,000,000,000 이하 자연수

입출력 예

n return
118372 873211

 

나의 풀이

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

 

  1. 내림차순 정렬을 위해 리스트의 메소드인 sort(reverse=True) 사용
  2. 이를 위해 정수인 입력값을 list(str(n)) 로 리스트화.
  3. 리스트로 바꾸고 sort(reverse=True)를 통해 내림차순 정렬
  4. 정수로 리턴해야 하기 때문에 ["8","7","3","2","1","1"] 형태인 answer을
    ' '.join() 함수를 통해 연결된 숫자로 변경한다.
  5. 마지막 int() 함수를 통해 정수로 변경한다.