题意分析:
1、输入一个n,求n的全排列。
解题思路:
1、其实就是求,n个小朋友坐n个座位,有多少种方案,把所有的方案输出。
//caioj:1031递归1:全排列
#include<cstdio>
int a[110],b[110],n;
void dfs(int x)
{
if(x>n)
{
for(int i=1;i<=n;i++) printf("%5d",a[i]);
printf("\n");
}
for(int i=1;i<=n;i++)
{
if(b[i])
{
a[x]=i; b[i]=0;
dfs(x+1);
b[i]=1;
}
}
}
int main()
{
scanf("%d",&n);
for(int i=1;i<=n;i++) b[i]=1;
dfs(1);
return 0;
}