题解
2024-08-18 10:35:06
发布于:广东
5阅读
0回复
0点赞
#include<bits/stdc++.h>
using namespace std;
const int N = 10;
int vis[N],a[N],n;//vis是访问过没有, a是小桶
//开始搜索
void dfs(int t){
//边界
if(t==n+1){
for(int i=1;i<=n;i++){
cout<<setw(5)<<a[i];
}
cout<<endl;
return;
}
for(int i=1;i<=n;i++){
if(vis[i]==0){
vis[i]=1;
a[t]=i;//第t轮拿了n号球
dfs(t+1);
vis[i]=0;
}
}
}
int main(){
cin>>n;
dfs(1);//定义深搜函数dfs
return 0;
}
这里空空如也
有帮助,赞一个