class Solution:
def checkSubarraySum(self, nums, k):
prefix_mod = 0
mod_seen = defaultdict(int)
mod_seen[0] = -1
for i, num in enumerate(nums):
prefix_mod = (prefix_mod + num) % k
if prefix_mod in mod_seen:
if i - mod_seen[prefix_mod] > 1:
return True
else:
mod_seen[prefix_mod] = i
return False