提交时间:2023-11-04 09:12:55

运行 ID: 108670

#include <bits/stdc++.h> using namespace std; bool vis[10]; int n, ans; void dfs(string s, int dep) { for (int i=1; i<=n; i++) { if (vis[i]) continue; vis[i] = true; string tmp = s+(char)(i+'0'); dfs(tmp, dep+1); if (dep == n-1) { cout << tmp << endl; ans++; } vis[i] = false; } } int main() { // freopen("permutation.in", "r", stdin); // freopen("permutation.out", "w", stdout); cin >> n; dfs("", 0); cout << ans; return 0; }