作者Rushia (みけねこ的鼻屎)
標題Re: [閒聊] 每日leetcode
時間2024-03-27 10:40:38
https://leetcode.com/problems/subarray-product-less-than-k
713. Subarray Product Less Than K
給你一個陣列 nums,找出他的子陣列有幾個內積小於k。
思路:
1.滿足特定條件的子陣列問題基本上都是滑動窗口,維護一個窗口保存當前內積,如果不
滿足條件就把前面的元素pop掉,把窗口的大小加總即可。
py code
----------------------------------------------------
class Solution:
def numSubarrayProductLessThanK(self, nums: List[int], k: int) -> int:
if k <= 1:
return 0
res = 0
l = 0
product = 1
for r in range(len(nums)):
product *= nums[r]
while product >= k:
product //= nums[l]
l += 1
res += r - l + 1
return res
----------------------------------------------------
--
https://i.imgur.com/Df746ya.jpg
--
※ 發信站: 批踢踢實業坊(ptt-web.org.tw), 來自: 101.138.213.250 (臺灣)
※ 文章網址: https://ptt-web.org.tw/Marginalman/M.1711507242.A.066
推 JIWP: 大師 03/27 10:44
推 DJYOSHITAKA: 大師 03/27 11:18