本文主要是介绍Leetcode 1838. 最高频元素的频数(DAY 132) ---- 贪心算法学习期,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
原题题目
代码实现(首刷看了点思路)
class Solution {
public:
int maxFrequency(vector<int>& nums, int k) {
long tempsum = 0;
int ret = 0;
sort(nums.begin(),nums.end());
for(int l=0,r=0;l<nums.size();++l)
{
while(r<nums.size()-1 && tempsum <= k)
{
tempsum += (long long)(nums[r+1] - nums[r])*(r-l+1);
++r;
}
if(tempsum <= k) ret = max(ret,r-l+1);
else ret = max(ret,r-l);
tempsum -= (nums[r] - nums[l]);
}
return ret;
}
};
这篇关于Leetcode 1838. 最高频元素的频数(DAY 132) ---- 贪心算法学习期的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!