Run ID | 作者 | 问题 | 语言 | 测评结果 | 分数 | 时间 | 内存 | 代码长度 | 提交时间 |
---|---|---|---|---|---|---|---|---|---|
107712 | 曾煦翔 | 全排列问题 | C++ | 通过 | 100 | 163 MS | 252 KB | 472 | 2023-10-28 08:47:02 |
#include <iostream> using namespace std; int a[1005] , b[1005] , n; void p() { for(int i = 1;i <= n;i++) cout << b[i]; cout << endl; } void dfs(int k) { if(k == n){ p(); return; } for(int i = 1;i <= n;i++) { if(!a[i]) { a[i] = 1; b[k + 1] = i; dfs(k + 1); a[i] = 0; } } } int main() { cin >> n; dfs(0); int cnt = 1; for(int i = 1;i <= n;i++) cnt *= i; cout << cnt; return 0; }