LeetCode 1207. Unique Number of Occurrences 문제를 풀 때 깨달은 사실
정수 배열이 주어질 때, 주어진 배열에서 각 값(요소)의 발생 횟수가 고유하면 True를 반환하고 그렇지 않으면 false를 반환한다.
Counter(arr)의 값을 일일이 set에 넣고 포함되는지 확인함 - 나쁘진 않음
class Solution:
def uniqueOccurrences(self, arr: List[int]) -> bool:
counter = collections.Counter(arr)
occurrences = set()
for c in counter.values():
if c in occurrences:
return False
break
occurrences.add(c)
return True
Counter(arr)와 set의 길이를 비교해서 확인함 - 헉 이 방법을 왜 생각 못했지? 싶음
class Solution:
def uniqueOccurrences(self, arr: List[int]) -> bool:
counter = Counter(arr)
return len(counter.values()) == len(set(counter.values()))