[python] 프로그래머스 가장 큰 수

Youngseo Lee·2024년 9월 29일

Python

목록 보기
5/5

프로그래머스 가장 큰 수

https://school.programmers.co.kr/learn/courses/30/lessons/42746

문제

풀이

def solution(numbers):
    answer = ''
    
    numbers = list(map(str, numbers))
    
    numbers.sort(key = lambda x : x*3,reverse=True) # 3번씩 반복하면 붙였을때 큰수 찾기 가능
    
    for i in numbers:
        answer += i
    
    return str(int(answer))
    

📌 주의

  1. 숫자 리스트를 문자열 리스트로 변환한다.
  2. 각 문자열을 3번 반복하여 문자열 비교를 통해 각 숫자가 어떻게 붙을 때 가장 큰 수를 만들 수 있는지 판단하여 내림차순으로 정렬한다.
  3. 정렬된 숫자들을 차례로 붙여서 가장 큰 숫자를 만든다.
  4. 만들어진 숫자가 000 같은 경우일 때를 대비하여 숫자로 변환 후 다시 문자열로 변환한다.
profile
leenthepotato

0개의 댓글