#include<bits/stdc++.h>
using namespace std;
int n,a[101],b[101];
void dfs(int k){ //放置第k个位置
if(k>1){
for(int i=1;i<k;i++){
cout<<a[i];
}
cout<<endl;
}
for(int i=1;i<=n;i++){
if(b[i]==0){
a[k]=i;
b[i]=1;
dfs(k+1);
a[k]=0;
b[i]=0;
}
}
}
int main(){
cin>>n;
dfs(1); //先放第1个数字
return 0;
}
/*
输入
3
输出
1
12
123
13
132
2
21
213
23
231
3
31
312
32
321
*/
C++ 全排列所有情况
于 2023-12-09 13:26:15 首次发布