523. Continuous Subarray Sum
紀錄prefix sum的餘數
若之前出現過相同餘數的prefix sum
代表這之間的subarray可以被k整除
不過實作起來細節也不少
像是要init mod_hit[0] = -1之類的
WA了幾次
漬漬漬
def checkSubarraySum(self, nums: List[int], k: int) -> bool:
mod_hit = {}
mod_hit[0] = -1
sum_cur = 0
for idx,i in enumerate(nums):
sum_cur += i
if (sum_cur%k) in mod_hit and (idx-mod_hit[sum_cur%k])>=2:
return True
elif (sum_cur%k) not in mod_hit:
mod_hit[sum_cur%k] = idx
return False