2080. Range Frequency Queries (Medium) - TengnanYao/daily_leetcode GitHub Wiki

class RangeFreqQuery:

    def __init__(self, arr: List[int]):
        self.h = defaultdict(list)
        for i, num in enumerate(arr):
            self.h[num].append(i)

    def query(self, left: int, right: int, value: int) -> int:
        return bisect_left(self.h[value], right + 1) - bisect_left(self.h[value], left)

# Your RangeFreqQuery object will be instantiated and called as such:
# obj = RangeFreqQuery(arr)
# param_1 = obj.query(left,right,value)