作者DJYOSHITAKA (franchouchouISBEST)
看板Marginalman
標題Re: [閒聊] 每日leetcode
時間Fri Oct 18 08:44:16 2024
昨天的
先大到小排
第一個diff digit就是我們要換的
然後再從後面找過來要跟誰換
https://i.imgur.com/vutTUsK.png
早上都沒人喔== 跑這麼快
def maximumSwap(self, num: int) -> int:
max_s = sorted(list(str(num)), reverse=True)
target_digit, target_idx = '', -1
for i in range(len(max_s)):
if max_s[i] != str(num)[i]:
target_digit = max_s[i]
target_idx = i
break
swap_idx = -1
for i in reversed(range(len(max_s))):
if target_digit == str(num)[i]:
swap_idx = i
break
ans = list(str(num))
ans[target_idx], ans[swap_idx] = ans[swap_idx], ans[target_idx]
return int(''.join(ans))
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 125.229.37.69 (臺灣)
※ 文章網址: https://www.ptt.cc/bbs/Marginalman/M.1729212260.A.40A.html
→ TokiwaKurumi: 你是爽世喔? 10/18 08:45
→ DJYOSHITAKA: 爽世大學想考資工系跟大家捲 正在學刷題 10/18 08:46
推 Che31128: 太卷了 10/18 08:51
→ sixB: 你根本就是天才 10/18 10:13