Re: [閒聊] 每日leetcode

看板Marginalman作者 (leaf)時間7月前 (2025/04/23 23:02), 編輯推噓0(000)
留言0則, 0人參與, 最新討論串1404/1548 (看更多)
https://leetcode.com/problems/count-largest-group/description/ 1399. Count Largest Group 給定一整數n, 將1到n的所有整數依各位數之和分組, 返回擁有最大長度之組別數目。 若n = 13, 則分組為[1,10], [2,11], [3,12], [4,13], [5], [6], [7], [8], [9], 有4組擁有2元素, 故返回4。 -- 由於n最大僅到10000, 故位數之和的最大值為36(出現在9999), 直接用字典解決。 再遍歷1到n並用sum函數與列表生成式計算每個數字的位數之和, 記錄到字典中, 最後再統計與最大值相符的組別數目即可。 -- Python code: class Solution: def countLargestGroup(self, n: int) -> int: d = {_:0 for _ in range(1, 37)} for i in range(1, n + 1): d[sum(int(_) for _ in str(i))] += 1 mx = max(d.values()) return sum((1 if d[_] == mx else 0) for _ in range(1, 37)) -- https://i.imgur.com/AhNjoAu.jpeg
-- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 36.226.189.201 (臺灣) ※ 文章網址: https://www.ptt.cc/bbs/Marginalman/M.1745420524.A.F6F.html
文章代碼(AID): #1e2G3izl (Marginalman)
討論串 (同標題文章)
文章代碼(AID): #1e2G3izl (Marginalman)