Exchange Argument¶
Table of Contents¶
- 2895. Minimum Processing Time (Medium)
- 3457. Eat Pizzas! (Medium)
- 1665. Minimum Initial Energy to Finish Tasks (Hard)
- 3273. Minimum Amount of Damage Dealt to Bob (Hard)
- 2136. Earliest Possible Day of Full Bloom (Hard)
- 179. Largest Number (Medium)
- 3309. Maximum Possible Number by Binary Concatenation (Medium)
2895. Minimum Processing Time¶
3457. Eat Pizzas!¶
1665. Minimum Initial Energy to Finish Tasks¶
3273. Minimum Amount of Damage Dealt to Bob¶
2136. Earliest Possible Day of Full Bloom¶
179. Largest Number¶
from functools import cmp_to_key
from typing import List
# Greedy
def largestNumber(nums: List[int]) -> str:
strs = map(str, nums)
def cmp(a, b):
if a + b == b + a:
return 0
elif a + b > b + a:
return 1
else:
return -1
strs = sorted(strs, key=cmp_to_key(cmp), reverse=True)
return "".join(strs) if strs[0] != "0" else "0"
nums = [3, 30, 34, 5, 9]
print(largestNumber(nums)) # 9534330