和前面的思路一样
#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
bool vis[25];
int a[25];
ll n;
void dfs(int x)//当前的个数
{
if(x==n)
{
for(int i=0;i<n;i++)
{
printf("%5d",a[i]);
}
printf("\n");
}
for(int i=1;i<=n;i++)
{
if(vis[i]) continue;
vis[i] = true;
a[x] = i;
dfs(x+1);
vis[i] = false;
}
}
int main()
{
cin>>n;
dfs(0);
return 0;
}