Frequency Queries

  • + 0 comments
    def freqQuery(queries):
        ans = []
        fMap = defaultdict(int)
        cMap = defaultdict(int)
        for op, num in queries:
            if op == 1:
                count = fMap[num] 
                fMap[num] += 1
                cMap[count] -= 1
                cMap[count+1] += 1
            elif op == 2:
                count = fMap[num] 
                if count > 0:
                    fMap[num] -= 1
                    cMap[count] -= 1
                    cMap[count-1] += 1
            else:
                ans.append(int(cMap[num] > 0))
        return ans