Number of Good Ways to Split a String LeetCode solution in C++

1
class Solution {
2
public:
3
int numSplits(string s) {
4
int n = s.size();
5
vector<int> left(26, 0);
6
vector<int> right(26, 0);
7
int left_count = 0, right_count = 0;
8
int splits = 0;
9
for (auto &it : s) {
10
right[it - 'a']++;
11
if (right[it - 'a'] == 1) right_count++;
12
}
13
for (auto &it : s) {
14
left[it - 'a']++;
15
right[it - 'a']--;
16
if (left[it - 'a'] == 1) left_count++;
17
if (right[it - 'a'] == 0) right_count--;
18
if (left_count == right_count) splits++;
19
}
20
return splits;
21
}
22
};

0

WPM •0 •0

100%

ACC •0 •0

0s

TIME •0