1 solutions
-
1
样例就是答案
#include <bits/stdc++.h> using namespace std; int n,a[11],vis[11],m[11]; void dfs(int dep); int main(){ cin>>n; for(int i = 1;i<=n;i++)cin>>a[i]; dfs(1); return 0; } void dfs(int dep){ if(dep>n){ for(int i = 1;i<=n;i++)printf("%d ",m[i]); printf("\n"); return; } for(int i = 1;i<=n;i++){ if(!vis[i]){ vis[i] = 1; m[dep] = a[i]; dfs(dep+1); vis[i] = 0; } } }
Information
- ID
- 752
- Time
- 1000ms
- Memory
- 256MiB
- Difficulty
- 9
- Tags
- (None)
- # Submissions
- 7
- Accepted
- 5
- Uploaded By