leetcode-5.15[560. 和爲K的子數組、1337. 方陣中戰鬥力最弱的 K 行](python實現)

題目1

在這裏插入圖片描述

題解1

class Solution:
    def subarraySum(self, nums: List[int], k: int) -> int:
        hash={0:1}
        sum=0
        count=0
        for i in range(len(nums)):
            sum+=nums[i]
            if (sum-k) in hash:
                count+=hash[sum-k]
            if sum in hash:
                hash[sum]+=1
            else:
                hash[sum]=1
        print(hash)
        return count
    

附上題目鏈接

題目2

在這裏插入圖片描述

題解2

class Solution:
    def kWeakestRows(self, mat: List[List[int]], k: int) -> List[int]:
        res = []
        for i,l in enumerate(mat):
            count = l.count(1)
            res.append((count, i))
        res.sort(key=lambda x: x[0])
        res = [l[1] for l in res]
        return res[:k]

附上題目鏈接

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章