推 sustainer123: 大師 09/22 11:44
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 125.229.37.69 (臺灣)
※ 文章網址: https://www.ptt.cc/bbs/Marginalman/M.1726976614.A.394.html
※ 編輯: DJYOSHITAKA (125.229.37.69 臺灣), 09/22/2024 11:44:04
第一題
就算過去 沒啥
第二題
我是用pq 記下每個工人下次要出來挖的時候的總時長
叫總時長最短的出來挖
就可以確保平行作業下會有最短時間
第三第四 我直接一樣的code跑下去==
就two pointer
隨時看目前window內的各字母count有沒有大於word2的字母count
for r in range(n)
找到最大的l (最小的window) s.t. word1[l:r]符合條件
這時候word1[0:r] ~ word1[l:r]就都符合條件 所以ans += (l+1)
大概是這樣
應該是O(N)
其實應該寫快一點的
寫的很卡
排名後面後面的 加不了多少分
--