提交时间:2023-11-04 09:07:23

运行 ID: 108618

#include<bits/stdc++.h> using namespace std; int a[10], n, cnt; bool b[10]; void dfs(int i){ if (i > n){ for (int k = 1; k <= n; k++){ cout << a[k]; } cnt ++; cout << endl; } else { for (int k = 1; k <= n; k++){ if (!b[k]){ b[k] = true; a[i] = k; dfs(i + 1); b[k] = false; } } } } int main(){ cin >> n; dfs(1); cout << cnt; }