Number of Wonderful Substrings LeetCode solution in C++
1class Solution {2public:3long long wonderfulSubstrings(string word) {4int n = word.length();5int mask = 0;6unordered_map<int, int> m;7m[0]++;8long long int ans = 0;9for (int i = 0; i < n; i++) {10mask = mask ^ (1 << (word[i] - 'a'));11int temp = mask;12int j = 0;13while (j <= 9) {14int x = temp ^ (1 << j);15ans += m[x];16j++;17}18ans += m[mask];19m[mask]++;20}2122return ans;23}24};