Compare Strings by Frequency of the Smallest Character LeetCode solution in C++

1
class Solution {
2
private:
3
int countFreq(const string &s) {
4
char c = *min_element(begin(s), end(s));
5
return count(begin(s), end(s), c);
6
}
7

8
public:
9
vector<int> numSmallerByFrequency(vector<string> &queries, vector<string> &words) {
10
vector<int> freqs(11, 0);
11
for (const auto &word : words) {
12
freqs[countFreq(word)]++;
13
}
14
vector<int> prefSum(12, 0);
15
for (int i = 0; i < freqs.size(); i++) {
16
prefSum[i + 1] = prefSum[i] + freqs[i];
17
}
18
vector<int> ans;
19
for (const auto &q : queries) {
20
int cnt = countFreq(q);
21
ans.push_back(prefSum.back() - prefSum[cnt + 1]);
22
}
23
return ans;
24
}
25
};

0

WPM •0 •0

100%

ACC •0 •0

0s

TIME •0