1 import collections 2 import bisect 3 4 class Solution: 5 def getFC(self,word): 6 obj = collections.Counter(word) 7 for i in range(97,123): 8 c = chr(i) 9 if c in obj: 10 return obj[c] 11 12 def numSmallerByFrequency(self, queries: 'List[str]', words: 'List[str]') -> 'List[int]': 13 m = len(queries) 14 n = len(words) 15 temp1 = [0] * m 16 temp2 = [0] * n 17 18 for j in range(n): 19 temp2[j] = self.getFC(words[j]) 20 temp2 = sorted(temp2) 21 22 for i in range(m): 23 q = self.getFC(queries[i]) 24 k = bisect.bisect_right(temp2,q) 25 temp1[i] = n - k 26 return temp1