문제 출처
풀이
def merge_sort(x):
if len(x) < 2:
return x
m = len(x)//2
lx = merge_sort(x[:m])
rx = merge_sort(x[m:])
result = []
l = r = 0
while l < len(lx) and r < len(rx):
if int(rx[r]+lx[l]) < int(lx[l]+rx[r]):
result.append(lx[l])
l += 1
else:
result.append(rx[r])
r += 1
result += lx[l:]
result += rx[r:]
return result
def solution(numbers):
length = len(numbers)
for i in range(length):
numbers[i] = str(numbers[i])
answer = merge_sort(numbers)
return str(int(''.join(answer)))
'Programmers' 카테고리의 다른 글
| [python] 타겟 넘버 (0) | 2019.09.01 |
|---|---|
| [python] H-Index (0) | 2019.08.31 |
| [python] K번째수 (0) | 2019.08.31 |
| [python] 숫자 야구 (0) | 2019.08.30 |
| [python] 카펫 (0) | 2019.08.30 |