Count Positions on Street With Required Brightness

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
from typing import List

class Solution:
    def meetRequirement(self, n: int, lights: List[List[int]], requirement: List[int]) -> int:
        brightness = [0] * (n + 1)
        for l in lights:
            brightness[max(0, l[0] - l[1])] += 1
            brightness[min(n, l[0] + l[1] + 1)] -= 1

        bright = 0
        ans = 0
        for i in range(n):
            bright += brightness[i]
            if bright >= requirement[i]:
                ans += 1

        return ans