Re: [閒聊] 每日leetcode

作者: oin1104 (是oin的說)   2024-12-11 15:36:58
題目
你可以把陣列裡的數字變成num+k ~ num-k
最多可以讓幾個數字一樣
思路
隨便設一個數字
都可以用他來二分搜這個數字可以一樣的數字的數量
所以就暴力的對每個數字都二分搜就好了
後來看解答才看到sliding window
不過我覺得我這個也蠻有趣的
給大家看一下0.0
```cpp
class Solution {
public:
int maximumBeauty(vector<int>& nums, int k)
{
int res = 1;
int n = nums.size();
sort(nums.begin(),nums.end());
for(int i = 0 ; i <= nums[n-1] ; i ++)
{
int l = (int)(lower_bound(nums.begin() , nums.end() , i-k) - nums.be
gin());
// cout << l << " ";
int r = (int)(upper_bound(nums.begin() , nums.end() , i+k) - nums.be
gin());
// cout << r << " ";
res = max(res, r - l);
// cout<<endl;
}
return res;
}
};
```

Links booklink

Contact Us: admin [ a t ] ucptt.com