본문 바로가기

코딩테스트/Programmers

[Programmers/프로그래머스]정수 내림차순으로 배치하기

728x90
반응형

문제 설명

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

제한 조건
  • n은 1이상 8000000000 이하인 자연수입니다.
입출력 예
n return
118372 873211

풀이

이 문제는 먼저 n을 큰것부터 작은 순으로 정렬해야 한다.

  • sorted()함수를 적용하기 위해 먼저 n을 str()로 문자열로 만든 후 list()로 리스트로 만든다.
  • sorted() 함수에 reverse 속성을 True로 주면 오름차순 정렬이 된다. 

이렇게 정렬된 리스트를 다시 정수로 만들어 반환하면 된다.

  • 정렬된 리스트를 join() 메소드로 문자열로 만들고 int() 함수로 정수로 변환한다.

 

def solution(n):
    return int(''.join(sorted(list(str(n)),reverse=True)))
728x90
반응형