Letter Case Permutation LeetCode solution in C++
1class Solution {2vector<string> v;34public:5void solve(string s, int i) {6while (i < s.size() && isdigit(s[i])) i++;7if (i == s.size()) {8v.push_back(s);9return;10}11solve(s, i + 1);12s[i] = (isupper(s[i])) ? s[i] | ' ' : s[i] & '_'; // using bit manipulation to change13// into upper or lower case14solve(s, i + 1);15}16vector<string> letterCasePermutation(string s) {17solve(s, 0);18return v;19}20};