mirror of
https://github.com/lWolvesl/leetcode.git
synced 2026-01-13 02:38:37 +08:00
250923
This commit is contained in:
35
25/09/3005.cpp
Normal file
35
25/09/3005.cpp
Normal file
@@ -0,0 +1,35 @@
|
||||
#include <vector>
|
||||
#include <iostream>
|
||||
#include <unordered_map>
|
||||
|
||||
int maxFrequencyElements(std::vector<int> &nums)
|
||||
{
|
||||
std::unordered_map<int,int> m;
|
||||
std::for_each(nums.begin(),nums.end(),[&m](int x){
|
||||
m[x]++;
|
||||
});
|
||||
int max = 0;
|
||||
for_each(m.begin(),m.end(),[&max](std::pair<int,int> p){
|
||||
if (p.second > max) max = p.second;
|
||||
});
|
||||
int count = 0;
|
||||
std::for_each(m.begin(),m.end(),[&count,max](std::pair<int,int> p){
|
||||
if (p.second == max) count++;
|
||||
});
|
||||
|
||||
return count;
|
||||
}
|
||||
|
||||
int enhance_1(std::vector<int> nums) {
|
||||
std::unordered_map<int,int> m;
|
||||
int ans = 0, max = 0;
|
||||
std::for_each(nums.begin(),nums.end(),[&m,&ans,&max](int x) {
|
||||
int c = ++m[x];
|
||||
if (c > max) {
|
||||
ans = max = c;
|
||||
}else if (c == max) {
|
||||
ans += c;
|
||||
}
|
||||
});
|
||||
return ans;
|
||||
}
|
||||
Reference in New Issue
Block a user