这个全排列问题非常经典。
#include <stdio.h>
#include <string.h>
int m;
int a[10];
int book[10];
void f(int n)
{
int i,j;
if(n==m)
{
for(i=0;i<m;i++)
{
printf("%d",a[i]);
}
printf("\n");
return ;
}
for(j=1;j<=m;j++)
{
if(!book[j])
{
book[j]=1;
a[n]=j;
f(n+1);
book[j]=0;
// printf("%d ",j);
}
}
}
int main()
{
int t;
scanf("%d",&t);
while(t--)
{
memset(book,0,sizeof(book));
scanf("%d",&m);
f(0);
}
return 0;
NYOJ 366 D的小L
最新推荐文章于 2018-03-09 21:01:32 发布