https://leetcode.com/problems/unique-number-of-occurrences/description
Q. 주어진 정수배열 arr에서 각 원소의 출현 횟수가 유일한지 여부를 반환하라.
Solution.
1. Hash관련 알고리즘 풀이에서 frequency buffer를 써야 하는 상황은 정말 많이 나온다. 그 entry point에 해당하는 문제라 볼수 있겠다.
2. 대체적으로 풀이를 구상해봤는데, O(N)을 만족한다면, 대체로 충분한 답이다. 다만 원소가 정렬되어 있다면 binary search를 해서 O(logN)으로 접근할 수 있다는 점을 추가로 염두 해 두자.
bool uniqueOccurrences(vector<int>& arr)
{
unordered_map<int, int> freqMap;
for (int k = 0; k < arr.size(); ++k)
freqMap[arr[k]]++;
unordered_set<int> check;
for (unordered_map<int, int>::iterator it = freqMap.begin(); it != freqMap.end(); ++it)
{
if (check.find(it->second) == check.end())
check.insert(it->second);
else
return false;
}
return true;
}
'Leetcode > LeetCode75' 카테고리의 다른 글
[HashMap/Set][Medium] 2352. Equal Row and Column Pairs (0) | 2023.12.11 |
---|---|
[HashMap/Set][Medium] 1657. Determine if Two Strings Are Close (1) | 2023.12.10 |
[HashMap/Set][Easy] 2215. Find the Difference of Two Arrays (0) | 2023.12.09 |
[PrefixSum][Easy] 724. Find Pivot Index (1) | 2023.12.08 |
[PrefixSum][Easy] 1732. Find the Highest Altitude (1) | 2023.12.07 |