题解 | 全排列
全排列
https://www.nowcoder.com/practice/1d1fe38275da44b5848add89f9e223b1
#include<bits/stdc++.h>
using namespace std;
int n,num[20];
bool f_num[20];
void print(int p){
for(int i=1;i<=p-1;i++){
cout<<num[i]<<" ";
}
cout<<endl;
}
void dfs(int x){
if(x==n+1){
print(x);
return;
}
for(int i=1;i<=n;i++){
if(!f_num[i]){
f_num[i]=true;
num[x]=i;
dfs(x+1);
f_num[i]=false;
}
}
}
void solve(){
dfs(1);
}
int main(){
ios::sync_with_stdio(false);
cin.tie(0);
cin>>n;
solve();
return 0;
}