leetcode784. 字母大小写全排列
好久没写了,随便写写吧。
长度不超过12,就可以直接暴力了。
class Solution { public: vector<string> ans; vector<int> ind; string p; int dfs(int a){ if (a==ind.size()){ ans.push_back(p); return 0; } string temp=p; dfs(a+1); p[ind[a]]+='A'-'a'; dfs(a+1); p=temp; return 1; } vector<string> letterCasePermutation(string s) { int i; for(i=0;i<s.length();i++){ if(s[i]>='a'&&s[i]<='z'){ ind.push_back(i); } if(s[i]>='A'&&s[i]<='Z'){ ind.push_back(i); s[i]+='a'-'A'; } } p=s; dfs(0); return ans; } };