提交时间:2023-11-04 09:27:59

运行 ID: 108716

#include<bits/stdc++.h> using namespace std; int ans,n,a[37]; bool v[37]; void dfs(int k) { if(k==n) { for(int i=1;i<n;i++) {cout<<a[i];} for(int i=1;i<=n;i++ ) {if(!v[i]){cout<<i;}} cout<<endl;ans++; } for(int i=1;i<=n;i++) { if(!v[i]) {v[i]=1;a[k]=i; dfs(k+1); a[k]=0;v[i]=0;} } } int main() { cin>>n; dfs(1); cout<<ans; }