作者dont (dont)
看板Marginalman
標題Re: [閒聊] 每日leetcode
時間Fri Dec 13 09:09:34 2024
2593. Find Score of an Array After Marking All Elements
## 思路
建(num, idx) 的min heap
每次pop檢查idx有沒有mark過, 沒有就+score並mark
## Code
```python
class Solution:
def findScore(self, nums: List[int]) -> int:
n = len(nums)
heap = []
for idx, num in enumerate(nums):
heapq.heappush(heap, (num, idx))
res = 0
while heap:
num, idx = heapq.heappop(heap)
if nums[idx] == num:
res += num
nums[idx] = 0
if idx: nums[idx-1] = 0
if idx < n-1: nums[idx+1] = 0
return res
```
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 94.156.205.219 (臺灣)
※ 文章網址: https://www.ptt.cc/bbs/Marginalman/M.1734052176.A.0C7.html
→ DJYOMIYAHINA: 別卷了 12/13 09:09
推 Furina: 大師 12/13 09:11