Giả sử chúng ta có một danh sách các số nums (dương hoặc âm), chúng ta phải kiểm tra xem số lần xuất hiện của mọi giá trị trong mảng có duy nhất hay không.
Ví dụ, nếu đầu vào là nums = [6, 4, 2, 9, 4, 2, 2, 9, 9, 9], thì đầu ra sẽ là True, vì có 1 lần xuất hiện của 6, 2 lần của 4, 3 lần của 2, và 4 lần của 9. Vì vậy tất cả số lần xuất hiện đều duy nhất.
Để giải quyết, chúng ta thực hiện các bước sau:
- num_counts := một map mới lưu trữ tất cả các giá trị và số lần xuất hiện của giá trị đó
- occurrences := danh sách tất cả các giá trị của num_counts
- trả về True khi kích thước của occurrences bằng số phần tử duy nhất trong occurrences, ngược lại False
Ví dụ
from collections import Counter
class Solution:
def solve(self, nums):
num_counts = dict(Counter(nums))
occurrences = num_counts.values()
return len(occurrences) == len(set(occurrences))
ob = Solution()
nums = [6, 4, 2, 9, 4, 2, 2, 9, 9, 9]
print(ob.solve(nums))
Input
[6, 4, 2, 9, 4, 2, 2, 9, 9, 9]
Output
True