알고리즘

프로그래머스 가장 큰 수[파이썬]

메밀국수가생각나 2021. 11. 1. 19:48

https://programmers.co.kr/learn/courses/30/lessons/42746?language=python3 

 

코딩테스트 연습 - 가장 큰 수

0 또는 양의 정수가 주어졌을 때, 정수를 이어 붙여 만들 수 있는 가장 큰 수를 알아내 주세요. 예를 들어, 주어진 정수가 [6, 10, 2]라면 [6102, 6210, 1062, 1026, 2610, 2106]를 만들 수 있고, 이중 가장 큰

programmers.co.kr

 

from itertools import permutations

def solution(numbers):
    
    numbers = list(map(str,numbers))
    strs = []
    permus = list(permutations(numbers,len(numbers)))

    for permu in permus:
        str1 = ''
        str1 = str1.join(permu)
        strs.append(str1)
            
    return max(strs)

위 코드는 기능은 잘 되는 것 같지만 시간 초과로 아쉽게 코딩 테스트를 통과할 수 없었다. 하지만 permutations 라이브러리를 익힐 수 있는 좋은 예제 코드로 탄생한 것 같아 기록에 남긴다.