作者DJYOSHITAKA (franchouchouISBEST)
標題Re: [閒聊] 每日leetcode
時間2024-03-27 21:11:27
713. Subarray Product Less Than K
用two pointer
持續記錄目前的product
若product有超過就移動左邊
否則就持續移動右邊
int numSubarrayProductLessThanK(vector<int>& nums, int k) {
int r=0;
int l=0;
int cur_pro = 1;
int ans = 0;
for(int r=0; r<nums.size(); r++)
{
cur_pro *= nums[r];
while(cur_pro >= k && l<=r)
{
cur_pro /= nums[l];
l++;
}
ans += (r-l+1);
}
return ans;
}
--
※ 發信站: 批踢踢實業坊(ptt-web.org.tw), 來自: 42.79.104.126 (臺灣)
※ 文章網址: https://ptt-web.org.tw/Marginalman/M.1711545089.A.FF8
推 oinishere: 大師 03/27 21:24