請你實現乙個「數字乘積類」productofnumbers,要求支援下述兩種方法:1. add(int num)
將數字 num 新增到當前數字列表的最後面。
2. getproduct(int k)
返回當前數字列表中,最後 k 個數字的乘積。
你可以假設當前列表中始終 至少 包含 k 個數字。
題目資料保證:任何時候,任一連續數字序列的乘積都在 32-bit 整數範圍內,不會溢位。
方法:字首和思想
class productofnumbers(object):
def __init__(self):
self.a=[1]
def add(self, num):
""":type num: int
:rtype: none
"""if num == 0:
self.a=[1]
else:
def getproduct(self, k):
""":type k: int
:rtype: int
"""if k>=len(self.a):
return 0
return self.a[-1]/self.a[-k-1]
# your productofnumbers object will be instantiated and called as such:
# obj = productofnumbers()
# obj.add(num)
# param_2 = obj.getproduct(k)
LeetCode5341 最後 K 個數的乘積
請你實現乙個 數字乘積類 productofnumbers,要求支援下述兩種方法 1.add int num 將數字 num 新增到當前數字列表的最後面。2.getproduct int k 返回當前數字列表中,最後 k 個數字的乘積。你可以假設當前列表中始終 至少 包含 k 個數字。題目資料保證 ...
陣列演算法 乘積小於K的子區間個數
題目 現給出乙個元素全為正整數的陣列nums和乙個正數k,計算nums裡面元素乘積小於k的子區間個數。leetcode 713 例子 輸入 nums 10,5,2,6 k 100 輸出 8 解釋 8個子區間分別是 10 5 2 6 10,5 5,2 2,6 5,2,6 注意到 10,5,2 的乘積是...
乘積小於k的子陣列
給定乙個正整數陣列 nums。找出該陣列內乘積小於 k 的連續的子陣列的個數。輸入 nums 10,5,2,6 k 100 輸出 8 解釋 8個乘積小於100的子陣列分別為 10 5 2 6 10,5 5,2 2,6 5,2,6 需要注意的是 10,5,2 並不是乘積小於100的子陣列。說明 定義兩...