力扣1838.最高频的元素的频数

力扣1838.最高频的元素的频数

  • 首先排序 然后右指针遍历补成的数

    • 每次加**差值(num[i] - num[i-1]) * 位数(i - j)
cpp 复制代码
 class Solution {
 public:
     int maxFrequency(vector<int>& nums, int k) {
         int res=1,n = nums.size();
         sort(nums.begin(),nums.end());
         long long ans=0;
         for(int i=1,j=0;i<n;i++)
         {
             ans += (long long)(nums[i] - nums[i-1])*(i-j);
             while(ans > k)
             {
                 ans -= (nums[i] - nums[j]);
                 j ++;
             }
             res = max(res,i-j+1);
         }
         return res;
     }
 };
相关推荐
寻星探路15 小时前
【算法专题】哈希表:从“两数之和”到“最长连续序列”的深度解析
java·数据结构·人工智能·python·算法·ai·散列表
!停15 小时前
C语言单链表
c语言·数据结构·算法
独自破碎E15 小时前
【队列】求二叉树的层序遍历
leetcode
闻缺陷则喜何志丹16 小时前
【回文 字符串】3677 统计二进制回文数字的数目|2223
c++·算法·字符串·力扣·回文
Tisfy16 小时前
LeetCode 0085.最大矩形:单调栈
算法·leetcode·题解·单调栈
mit6.82416 小时前
出入度|bfs|状压dp
算法
!停16 小时前
C语言栈和队列的实现
开发语言·数据结构
hweiyu0016 小时前
强连通分量算法:Kosaraju算法
算法·深度优先
源代码•宸16 小时前
Golang语法进阶(定时器)
开发语言·经验分享·后端·算法·golang·timer·ticker
mit6.82416 小时前
逆向思维|memo
算法