-
Notifications
You must be signed in to change notification settings - Fork 3
/
Copy path1207.unique-number-of-occurrences.py
65 lines (42 loc) · 1.37 KB
/
1207.unique-number-of-occurrences.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
from lc import *
# https://leetcode.com/problems/unique-number-of-occurrences/discuss/949934/python-3-one-line
class Solution:
def uniqueOccurrences(self, arr: List[int]) -> bool:
return len(Counter(arr))==len(set(Counter(arr).values()))
class Solution:
def uniqueOccurrences(self, a: List[int]) -> bool:
return eq(*map(len,map(set,(a,Counter(a).values()))))
class Solution:
def uniqueOccurrences(self, arr: List[int]) -> bool:
return len(set(arr))==len(set(Counter(arr).values()))
class Solution:
def uniqueOccurrences(self, a: List[int]) -> bool:
return len(c:=Counter(a))==len({*c.values()})
class Solution:
def uniqueOccurrences(self, a: List[int]) -> bool:
return len({*a})==len({*Counter(a).values()})
test('''
1207. Unique Number of Occurrences
Easy
2232
51
Add to List
Share
Given an array of integers arr, return true if the number of occurrences of each value in the array is unique, or false otherwise.
Example 1:
Input: arr = [1,2,2,1,1,3]
Output: true
Explanation: 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
Example 4:
Input: arr = [1, 2,2, 3,3,3, 4,4,4,4]
Output: true
Constraints:
1 <= arr.length <= 1000
-1000 <= arr[i] <= 1000
''')