提交时间:2025-08-27 19:50:02

运行 ID: 343505

#include<bits/stdc++.h> using namespace std; const int N=10; int n; bool vis[N]; int path[N]; void dfs(int u){ if(u==n){ for(int i=0;i<n;i++){ printf("%d ",path[i]); }puts(""); return; } for(int i=1;i<=n;i++){ if(!vis[i]){ path[u]=i; vis[i]=1; dfs(u+1); vis[i]=0; } } } int main(){ scanf("%d",&n); dfs(0); return 0; }