1
class ProductOfNumbers {
2
private:
3
vector<int> prefixProduct;
4

5
public:
6
ProductOfNumbers() {}
7

8
void add(int num) {
9
if (num == 0) {
10
prefixProduct.clear();
11
return;
12
}
13
if (prefixProduct.empty()) {
14
prefixProduct.push_back(num);
15
} else {
16
int prod = prefixProduct[prefixProduct.size() - 1] * num;
17
prefixProduct.push_back(prod);
18
}
19
}
20
int getProduct(int k) {
21
if (k > prefixProduct.size()) {
22
return 0;
23
}
24
int size = prefixProduct.size();
25
if (k == size) return prefixProduct[size - 1];
26
int prod = prefixProduct[size - 1] / prefixProduct[size - k - 1];
27
return prod;
28
}
29
};

0

WPM •0 •0

100%

ACC •0 •0

0s

TIME •0