프로그래머스 Lv.1 정수 내림차순으로 배치하기

서준·2023년 6월 14일
0

프로그래머스 Lv.1

목록 보기
6/35

1. 문제

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

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

2. 풀이

1차 시도(성공)

  • 일단 리스트로 만들어서 sort 하는거 그거 해보자
def solution(n):
    result = 0
    # 자릿수 계산
    k = 0
    # list로 만든후 오름차순 정렬
    int_list = list(map(int, str(n)))
    int_list.sort()
    
    # 내림차순 정렬된 list를 하나의 int로 계산
    for i in int_list:
        result += i * (10**k)
        k += 1
    return result
  • 비교적 쉽게 풀었다.

3. Lv.up

  1. 배열 sort
my_list.sort(reverse=True)
  • reverse없으면 오름차순

4. Ref.

def solution(n):
    ls = list(str(n))
    ls.sort(reverse = True)
    return int("".join(ls))
  • 굳이 map을 할필요가 없었네... join을 썼네.. 알아가자.
profile
어린이입니다.

0개의 댓글