1 #include<bits/stdc++.h> 2 using namespace std; 3 int a[100000+1]; 4 bool b[100000+1]; 5 int search(int k); 6 int print(); 7 int n,num; 8 int main(){ 9 cin>>n; 10 search(1); 11 cout<<num<<endl; 12 return 0; 13 } 14 int search(int k){ 15 for(int i=1;i<=n;i++) 16 if(!b[i]){ 17 a[k]=i; 18 b[i]=1; 19 if(k==n) print(); 20 else search(k+1); 21 b[i]=0; 22 } 23 24 } 25 int print(){ 26 num++; 27 for(int i=1;i<=n;i++) 28 cout<<setw(3)<<a[i]; 29 cout<<endl; 30 }
啦啦啦,又来了一遍全排列