09 Sept 2026Go / Python / TypeScriptEasy

Unique Number of Occurrences

Check whether every distinct array value has a distinct frequency.

Count values, then insert each frequency into a set and reject the first duplicate frequency.

complexity

O(n) time and O(n) space.

solution files

  • Go unique-number-of-occurrences/solution.go
  • Python unique-number-of-occurrences/solution.py
  • TypeScript unique-number-of-occurrences/solution.ts

Solution files

Gounique-number-of-occurrences/solution.go
package main

func uniqueOccurrences(arr []int) bool {
	count := map[int]int{}
	for _, value := range arr {
		count[value]++
	}
	seen := map[int]bool{}
	for _, frequency := range count {
		if seen[frequency] {
			return false
		}
		seen[frequency] = true
	}
	return true
}
Pythonunique-number-of-occurrences/solution.py
from collections import Counter


class Solution:
    def uniqueOccurrences(self, arr: list[int]) -> bool:
        frequencies = Counter(arr).values()
        return len(set(frequencies)) == len(frequencies)
TypeScriptunique-number-of-occurrences/solution.ts
function uniqueOccurrences(arr: number[]): boolean {
  const count = new Map<number, number>(); for (const value of arr) count.set(value, (count.get(value) ?? class="syntax-number">0) + class="syntax-number">1);
  return new Set(count.values()).size === count.size;
}