题目:原题链接(中等)
标签:设计、数组
| 解法 | 时间复杂度 | 空间复杂度 | 执行用时 | 
| Ans 1 (Python) | add = O ( 1 ) ; getProduct = O ( 1 ) | O ( N ) | 252ms (75.38%) | 
| Ans 2 (Python) | |||
| Ans 3 (Python) | 
解法一:
class ProductOfNumbers:
    def __init__(self):
        self.array = [0]
        self.zero = 0
    def add(self, num: int) -> None:
        if num != 0:
            if self.array[-1] == 0:
                self.array.append(num)
            else:
                self.array.append(self.array[-1] * num)
        else:
            self.zero = len(self.array)
            self.array.append(0)
    def getProduct(self, k: int) -> int:
        idx2 = len(self.array) - 1
        idx1 = idx2 - k
        if idx1 < self.zero:
            return 0
        elif idx1 == self.zero:
            return self.array[idx2]
        else:
            return self.array[idx2] // self.array[idx1]









