Number of Excellent Pairs LeetCode solution in Python
1# Runtime: 2052 ms (Top 44.44%) | Memory: 32.2 MB (Top 22.19%)234class Solution:5def countExcellentPairs(self, nums: List[int], k: int) -> int:6hamming = sorted([self.hammingWeight(num) for num in set(nums)])7ans = 08for h in hamming:9ans += len(hamming) - bisect.bisect_left(hamming, k - h)10return ans1112def hammingWeight(self, n):13ans = 014while n:15n &= n - 116ans += 117return ans