각 숫자의 앞자리들만 비교하여 정렬을 하고 싶었다... 하지만 어떻게? HOW? for문을 잔뜩 쓰고 어찌저찌해서 테스트케이스는 통과했지만 제출을 하니 실패가 와르르 떴다. 결국 구글링 고고!!
그렇게 해서 찾은 방법
lambda x : x*3
: 각 인수들을 3번씩 반복한다너무 간단하고 깔끔한 방법에 감탄하면서 제출을 하니까 마지막 테스트케이스를 통과하지 못했다...!! 🤷♀️
def solution(numbers):
answer = ''
str_list = list(map(str,numbers))
for i in sorted(str_list, key = lambda x : x*3, reverse=True):
answer += i
return answer
만약 0000
이 들어온다면 0
이 return 되어야 하는데, 내 풀이는 0000
이 return된다. 문자열을 더한 후 int로 변환하고 다시 문자열로 변환해주어야 한다!
def solution(numbers):
str_list = list(map(str,numbers))
str_list.sort(key = lambda x : x*3, reverse=True)
return str(int(''.join(str_list)))