2020. 5. 7. 22:54

[python](프로그래머스)정수 내림차순으로 배치하기

문제 설명


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

 

제한 조건


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

 

문제 풀이


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

숫자 n을 문자열로 바꾼뒤 거꾸로 정렬시킨다. sotred를 사용하면 리스트로 반환되는데 그걸 join함수를 이용해서 다시 문자열로 바꿔준다.

join함수를 쓰지 않으려면

def solution(n):
    a=""
    for i in sorted(str(n),reverse=True):
        a+=i
    return int(a)

이런식으로 for문을 다 돌려서 차례로 넣어준 값을 int형으로 형변환해서 리턴해주면 된다.