提交时间:2024-03-21 23:25:57

运行 ID: 139166

#include <iostream> #include <iomanip> using namespace std; int res[25], vis[25], n, r; bool b[25]; void dfs (int c){ if (c == r + 1){ for (int i = 1; i <= r; i++){ cout << res[i]; } cout << endl; return; } for (int i = res[c - 1] + 1; i <= n; i++){ if (!vis[i]){ res[c] = i; vis[i] = 1; dfs(c + 1); res[c] = 0; vis[i] = 0; } } } int main(){ cin >> n >> r; dfs(1); return 0; }