Medium
Zero Array Transformation I — Python
Full explanation · Time O(n + q) · Space O(n)
# Time: O(n + q)
# Space: O(n)
# line sweep
class Solution(object):
def isZeroArray(self, nums, queries):
"""
:type nums: List[int]
:type queries: List[List[int]]
:rtype: bool
"""
events = [0]*(len(nums)+1)
for l, r in queries:
events[l] += 1
events[r+1] -= 1
curr = 0
for i in xrange(len(nums)):
curr += events[i]
if nums[i] > curr:
return False
return True