这是我全排列问题的正确代码,怎么改这题才能对啊!求大佬帮忙!
#include<bits/stdc++.h>
using namespace std;
int n,a[10];
int bj[10]={0};
int dfs(int k){
if(k>n){
for(int i=1;i<=n;i++){
printf("%5d",a[i]);
}
cout<<endl;
return 0;
}
for(int i=1;i<=n;i++){
a[k]=i;
if(bj[i]==1){
continue;
}
bj[i]=1;
dfs(k+1);
a[k]=0;
bj[i]=0;
}
return 0;
}
int main(){
cin>>n;
dfs(1);
return 0;
}