프로그래머스|가장 큰 수

README·2022년 7월 31일
0

파이썬 PS풀이

목록 보기
4/136

문제설명

숫자들을 입력받고 그 숫자들을 연결해서 만들 수 있는 가장 큰 수를 출력하는 문제입니다.

작동 순서

  1. 숫자들을 입력받습니다.

  2. 입력받은 숫자들을 문자열로 변환해줍니다.

  3. 입력되는 숫자들이 1000이하의 숫자이므로 모든 숫자들이 3자리 이상이 될 수 있도록 3을 곱해준다음 역순으로 정렬을 합니다.

  4. 가장 큰 수가 0인경우 모든 수가 0으로 입력된것으로 생각하고 0을 반환합니다.

  5. 앞의 숫자부터 연결해가면서 숫자를 만들고 출력합니다.

소스코드

def solution(numbers):
    answer = ''
    sorted_number = list(map(str, numbers))
    sorted_number.sort(key=lambda x: x*3, reverse=True)
    if sorted_number[0] == '0':
        answer = '0'
    else:
        answer = ''.join(sorted_number)
    return answer
profile
INTP 개발자 지망생

0개의 댓글