Advertisement
kosievdmerwe

523

Oct 25th, 2022
870
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 0.58 KB | None | 0 0
  1. WINDOW = 2
  2.  
  3. class Solution:
  4.     def checkSubarraySum(self, nums: List[int], k: int) -> bool:
  5.         N = len(nums)
  6.         if N < WINDOW:
  7.             return False
  8.        
  9.         seen = {0}
  10.        
  11.         window = deque()
  12.         cur_sum = 0
  13.         for i, n in enumerate(nums):
  14.             cur_sum = (cur_sum + n) % k
  15.            
  16.             window.append(cur_sum)
  17.            
  18.             if i >= WINDOW - 1:
  19.                 if cur_sum in seen:
  20.                     return True
  21.                
  22.                 seen.add(window.popleft())
  23.        
  24.         return False
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement