提交时间:2024-01-23 16:28:13
运行 ID: 125142
#include<bits/stdc++.h> using namespace std; vector <char> vec; vector <string> ans; int n; void dfs(int cur){ if (cur > n){ string s = "("; for (int i = 0;i < n;i++){ if (vec[i] == ' '){ continue; } s += vec[i]; } s += ')'; ans.push_back(s); return ; } vec.push_back(' '); dfs(cur + 1); vec.pop_back(); vec.push_back((char)(cur - 1 + 'a')); dfs(cur + 1); vec.pop_back(); } signed main(){ cin>>n; dfs(1); sort(ans.begin(),ans.end()); for (int i = 0;i < ans.size();i++){ cout<<ans[i]<<'\n'; } return 0; }