from functools import cmp_to_key def largest_number(nums): arr = list(map(str, nums)) def cmp(a, b): if a + b < b + a: return 1 if a + b > b + a: return -1 return 0 arr.sort(key=cmp_to_key(cmp)) res = "".join(arr) return "0" if res[0] == "0" else res if __name__ == "__main__": print(largest_number([10, 2])) print(largest_number([3, 30, 34, 5, 9])) print(largest_number([0, 0]))