Notice
250x250
Recent Posts
Recent Comments
Link
넘치게 채우기
[LeetCode] 3005. Count Elements With Maximum Frequency 본문
728x90
반응형
https://leetcode.com/problems/count-elements-with-maximum-frequency/description/
Leetcode - Count Elements With Maximum Frequency
문제 유형 : 해시, 그리디
문제 난이도 : Easy
문제
You are given an array nums consisting of positive integers.
Return the total frequencies of elements in nums such that those elements all have the maximum frequency.
The frequency of an element is the number of occurrences of that element in the array.
당신은 자연수 배열 nums를 받습니다. nums의 요소들의 총 빈도를 구하여 가장 높은 빈도들의 합을 구하시오.
풀이
최대빈도와 가장 많은 요소를 가진 수들의 카운트를 0으로 초기화한다.
num-count꼴의 맵을 생성한다.
순차적으로 배열을 순회하면서, 각 숫자를 업데이트한다.
만약 숫자의 count가 기존 최대빈도보다 커진다면, 가장 많은 요소를 가진 수들의 카운트를 초기화한다.
만약 숫자의 count가 기존 최대빈도와 같다면, 가장 많은 요소를 가진 수들의 카운트에 1을 더한다.
최대빈도 * 가장 많은 요소를 가진 수들의 카운트를 반환한다.
코드
C++
class Solution {
public:
int maxFrequencyElements(vector<int>& nums) {
unordered_map<int, int> mp;
int cnt = 0;
int maxCnt = 0;
for(int i = 0; i < nums.size(); i++) {
mp[nums[i]]++;
if(mp[nums[i]] > maxCnt) {
maxCnt = mp[nums[i]];
cnt = 0;
}
if(mp[nums[i]] == maxCnt) {
cnt++;
}
}
return cnt * maxCnt;
}
};
728x90
반응형
'PS > LeetCode' 카테고리의 다른 글
[LeetCode] 349. Intersection of Two Arrays (0) | 2024.03.10 |
---|---|
[LeetCode] 2540. Minimum Common Value (0) | 2024.03.09 |
[LeetCode] 876. Middle of the Linked List (0) | 2024.03.07 |
[LeetCode] 1750. Minimum Length of String After Deleting Similar Ends (0) | 2024.03.05 |
[LeetCode] 948. Bag of Tokens (0) | 2024.03.04 |