리트코드 179번 Largest Number (python)

Kim Yongbin·2023년 10월 4일
0

코딩테스트

목록 보기
106/162

Problem

https://leetcode.com/problems/largest-number/description/

Solution

class Solution:
    def largestNumber(self, nums: List[int]) -> str:
        nums.sort(key=lambda x: str(x)*10, reverse=True)
        return str(int("".join([str(n) for n in nums])))

9자리 숫자까지 입력 받을 수 있으므로 10번씩 반복한뒤 string으로 형변환하여 정렬을 하면 된다.

330과 3을 비교 하였을 때 3 + 330 순서로 오는 것이 제일 큰 수를 만들 수 있다.
각각 10번씩 반복하게 된다면 330 ⇒ 330330330 …, 3 ⇒ 3333333… 이 되므로 3이 330보다 앞에 있게 된다.

Reference

파이썬 알고리즘 인터뷰 61번

profile
반박 시 여러분의 말이 맞습니다.

0개의 댓글