Given an array of integers `arr`

, return `true`

*if the number of occurrences of each value in the array is unique or *

`false`

**Example 1:**

Input:arr = [1,2,2,1,1,3]Output:trueExplanation:The value 1 has 3 occurrences, 2 has 2 and 3 has 1. No two values have the same number of occurrences.

**Example 2:**

Input:arr = [1,2]Output:false

**Example 3:**

Input:arr = [-3,0,1,-3,1,1,1,-3,10,0]Output:true

**Constraints:**

`1 <= arr.length <= 1000`

`-1000 <= arr[i] <= 1000`

` ````
```class Solution {
public:
bool uniqueOccurrences(vector& arr) {
unordered_map freq;
for(int i=0; i check;
for(auto num:freq)
{
check.insert(num.second);
}
return (check.size()==freq.size());
}
};

In this program, we have to determine whether the number of occurrences of each element in the input vector ‘arr’ is itself unique. Or, the function checks if the frequency or occurrences for each distinct element are distinct.

- For handling a frequency we will use an unordered map named ‘freq’ which will be used to store the frequency of each element in the input array ‘arr’.
- It then iterates through the array, and for each element, it increments the corresponding frequency ‘freq’ map.
- For calculating the number of times each element occurs in a frequency array, we have incremented the value of frequency ‘freq[ arr [ i ] ] ++’
- Now we will create an unordered set by the name ‘check’ ( which stores the elements in a unique form) and it stores no repeated elements.
- Now, we will iterate through the frequency stores in the ‘freq’ map.

- And for each frequency, we will insert the frequency into the ‘check’ set.

- Finally, we will compare the results. The function returns whether the size of the ‘check’ set is equal to the size of the ‘freq’ map. If they are equal, it means that the frequencies of occurrences for each unique element are distinct.

Office:- 660, Sector 14A, Vasundhara, Ghaziabad, Uttar Pradesh - 201012, India