Re: [閒聊] 每日leetcode已回收
看板Marginalman作者DJYOSHITAKA (franchouchouISBEST)時間1年前 (2024/03/28 20:40)推噓2(2推 0噓 0→)留言2則, 2人參與討論串75/1548 (看更多)
2958. Length of Longest Subarray With at Most K Frequency
用window,同時記錄window內的cnt並更新
當cnt>k時,滑動左邊讓window內的cnt再次符合條件
寫起來跟昨天87%像
int maxSubarrayLength(vector<int>& nums, int k) {
int l=0;
int r=0;
int ans = 0;
unordered_map<int,int> cnt;
for(; r<nums.size(); r++)
{
// update cnt
if(cnt.find(nums[r]) != cnt.end())
{
cnt[nums[r]]++;
}
else
{
cnt[nums[r]] = 1;
}
// check
while(cnt[nums[r]]>k && l<=r)
{
cnt[nums[l]]--;
l++;
}
ans = max(ans, r-l+1);
}
return ans;
}
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 1.171.13.190 (臺灣)
※ 文章網址: https://www.ptt.cc/bbs/Marginalman/M.1711629659.A.C70.html
推
03/28 20:41,
1年前
, 1F
03/28 20:41, 1F
推
03/28 20:41,
1年前
, 2F
03/28 20:41, 2F
討論串 (同標題文章)
完整討論串 (本文為第 75 之 1548 篇):