竞赛
考级
.̴̉͐̓͗̒͋͐̃͂͒̚符智远
法兰西玫瑰
本人代码并非最优解,仅供参考!
文昱翀
龙勃丞ДжазифанъЯЛДч
#include <bits/stdc++.h> using namespace std; int a[110],vis[110],n; void dfs(int p){ if(p==n+1){ for(int i=1;i<=n;i++){ cout<<a[i]<<" "; } cout<<endl; return ; } for(int i=1;i<=n;i++){ if(vis[i]==0){ vis[i]=1; a[p]=i; dfs(p+1); vis[i]=0; } } } int main(){ cin>>n; dfs(1); return 0; }
袁梦
洛谷原题,但是保留5个场宽 本题代码: 洛谷原题:
范特东
嫌疑を避ける ~~
#include<iostream> #include<iomanip> using namespace std; int n; bool vis[21]; int p[19]; void dfs(int idx){ if(idx > n){ for(int i = 1;i <= n;i++) printf("%d ",p[i]); cout << '\n'; } for(int i = 1;i <= n;i++){ if(!vis[i]){ p[idx] = i; vis[i] = true; dfs(idx+1); vis[i] = false; p[idx] = 0; } } } int main(){ cin >> n; dfs(1); return 0; }
DARK SPECTRE
Harry 海云
#include<bits/stdc++.h> using namespace std; long long n; int v[99999],ans[999999]; void f(int x){ if(x>n){ for(int i=1;i<=n;i++) cout<<ans[i]<< " "; cout<<endl; return ; } for(int i=1;i<=n;i++){ if(!v[i]){ v[i]=1; ans[x]=i; f(x+1); v[i]=0; } } } int main(){ cin>>n; f(1); return 0; }
骗分过样例,暴力出奇迹(互关)
#include<bits/stdc++.h> using namespace std;bool vis[10]; //0int a[10],n; void dfs(int t){ if(t==n+1){ for(int i=1;i<=n;i++) printf("%d ",a[i]); cout<<endl; return; } for(int i=1;i<=n;i++){ if(vis[i]==1) continue; a[t]=i; vis[i]=1; dfs(t+1); vis[i]=0; }} int main(){ cin>>n; dfs(1); return 0;}
准
排队干饭(幼儿园扛把子)的学生
#include<bits/stdc++.h> using namespace std; int st[10],si=0,n; bool a[10]; void foo(int x){ if(x==n+1){ for(int i=1;i<=si;i++){ cout<<st[i]<<" "; } cout<<endl; }else{ for(int i=1;i<=n;i++){ if(a[i]==false){ a[i]=true; st[++ si]=i; foo(x+1); si--; a[i]=false; } } int main(){ cin>>n; foo(1); return 0; }
漆黑寂夜 丁语飞
正在减肥的吃货
Green_wang.ntr
#include<bits/stdc++.h> using namespace std; int a[110],vis[110],n; void dfs(int p){ if(p==n+1){ for(int i=1;i<=n;i++) cout<<a[i]<<" "; cout<<endl; return ; } for(int i=1;i<=n;i++){ if(vis[i]==0){ vis[i]=1; a[p]=i; dfs(p+1); vis[i]=0; } } } int main(){ cin>>n; dfs(1); return 0; }
T-T
#include<iostream> using namespace std; int a[110],vis[110],n; void dfs(int p){ if(p==n+1){ for(int i=1;i<=n;++i){ cout<<a[i]<<" "; } cout<<endl; return ; } for(int i=1;i<=n;++i){ if(vis[i]==0){ vis[i]=1; a[p]=i; dfs(p+1); vis[i]=0; } } } int main(){ cin>>n; dfs(1); return 0; }
TLE菌