a524
輸入說明 :
輸入為一個 n (n<=8),代表鄭學長的密碼位數。
輸出說明 : .輸出所有可能的密碼,依字典順序反向排列(因為你覺得他的密碼應該在後半段)。
排列的題目,演算法筆記這篇的排列那邊,看懂應該就會寫了
#include<stdio.h>
int n;
int s[8];
int a[8];
int u[8];
void re(int c)
{
int i;
if(c==n)
{
for(i=0;i<n;i++)
printf("%d",s[i]);
puts("");
return;
}
for(i=0;i<n;i++)
{
if(u[i]==0)
{
u[i] = 1;
s[c] = a[i];
re(c+1);
u[i]=0;
}
}
}
int main()
{
int i;
while(scanf("%d",&n)!=EOF)
{
for(i=0;i<n;i++)
a[i]=n-i;
re(0);
}
}