int l;
int len;
vector<string> v;
vector<string> letterCasePermutation(string s) {
len=s.size();
l=0;
transform(s.begin(),s.end(),s.begin(),::toupper);
v.push_back(s);
transform(s.begin(),s.end(),s.begin(),::tolower);
for(int i=0;i<len;i++){
if(isalpha(s[i])){
l++;
}
}
if(l!=0){
v.push_back(s);
}
dfs(0,0,s);
return v;
};
void dfs(int pos,int sum,string s){
if(sum==l-1){
return ;
}else{
for(int i=pos;i<len;i++){
if(s[i]>='a'&&s[i]<='z'){
s[i]=toupper(s[i]);
v.push_back(s);
dfs(i,sum+1,s);
s[i]=tolower(s[i]);
}
}
}
}
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· winform 绘制太阳,地球,月球 运作规律
2021-09-13 STL中algorithm
2021-09-13 c++string类
2021-09-13 string.h函数
2021-09-13 高精度
2021-09-13 查找质数-欧拉筛法和埃氏筛