数据结构实验之图论四:迷宫探索
来源:互联网 发布:mac如何移除桌面图标 编辑:程序博客网 时间:2024/06/07 01:22
数据结构实验之图论四:迷宫探索
Time Limit: 1000MS Memory Limit: 65536KB
Problem Description
有一个地下迷宫,它的通道都是直的,而通道所有交叉点(包括通道的端点)上都有一盏灯和一个开关;请问如何从某个起点开始在迷宫中点亮所有的灯并回到起点?
Input
连续T组数据输入,每组数据第一行给出三个正整数,分别表示地下迷宫的结点数N(1 < N <= 1000)、边数M(M <= 3000)和起始结点编号S,随后M行对应M条边,每行给出一对正整数,表示一条边相关联的两个顶点的编号。
Output
若可以点亮所有结点的灯,则输出从S开始并以S结束的序列,序列中相邻的顶点一定有边,否则只输出部分点亮的灯的结点序列,最后输出0,表示此迷宫不是连通图。
访问顶点时约定以编号小的结点优先的次序访问,点亮所有可以点亮的灯后,以原路返回的方式回到起点。
Example Input
1
6 8 1
1 2
2 3
3 4
4 5
5 6
6 4
3 6
1 5
Example Output
1 2 3 4 5 6 5 4 3 2 1
include <bits/stdc++.h>using namespace std;int vis[1005], a[1005][1005];int b[1005];int n, c;void DFS(int k){ b[c++] = k; vis[k] = 1; for(int i = 1; i <= n; i++) { if(a[k][i] && !vis[i]) { DFS(i); b[c++] = k; } }}int main(){ int t, m, k; int u, v; cin >> t; while(t--) { c = 0; cin >> n >> m >> k; memset(a,0,sizeof(a)); memset(vis,0,sizeof(vis)); for(int i = 0; i < m; i++) { cin >> u >> v; a[u][v] = a[v][u] = 1; } DFS(k); for(int i = 0; i < c; i++) { if(i == 0) cout << b[i]; else cout << " " << b[i]; } if(2*n-1 != c) cout << " " << 0; cout << endl; } return 0;}
这个还没找到哪错了,留着有空找
#include <bits/stdc++.h>using namespace std;int vis[1005], a[1005][1005];int b[1005];int n, c;void DFS(int k){ b[c++] = k; vis[k] = 1; for(int i = 1; i <= n; i++) { if(a[k][i] && !vis[i]) { vis[i] = 1; DFS(i); } }}int main(){ int t, m, k; int u, v; cin >> t; while(t--) { c = 0; cin >> n >> m >> k; memset(a,0,sizeof(a)); memset(vis,0,sizeof(vis)); for(int i = 0; i < m; i++) { cin >> u >> v; a[u][v] = a[v][u] = 1; } DFS(k); for(int i = 0; i < c; i++) printf("%d ", b[i]); for(int i = c-2; i >= 0; i--) { if(i == c-2) cout << b[i]; else cout << " " << b[i]; } if(2*n != 2*c) cout << " " << 0; cout << endl; } return 0;}
阅读全文
0 0
- 数据结构实验之图论四:迷宫探索
- 数据结构实验之图论四:迷宫探索
- 数据结构实验之图论四:迷宫探索
- SDUTOJ3361-数据结构实验之图论四:迷宫探索
- SDUT3361数据结构实验之图论四:迷宫探索
- 数据结构实验之图论四:迷宫探索
- 数据结构实验之图论四:迷宫探索
- 数据结构实验之图论四:迷宫探索
- 数据结构实验之图论四:迷宫探索
- 数据结构实验之图论四:迷宫探索
- 数据结构实验之图论四:迷宫探索
- 数据结构实验之图论四:迷宫探索
- SDUTACM 数据结构实验之图论四:迷宫探索
- 数据结构实验之图论四:迷宫探索
- 数据结构实验之图论四:迷宫探索
- OJ3361数据结构实验之图论四:迷宫探索
- 数据结构实验之图论四:迷宫探索
- 数据结构实验之图论四:迷宫探索
- 【Scikit-Learn 中文文档】流形学习
- 12.Python入门之集合
- python的reportlab安装及调用的问题
- 统计英文文章中出现最多的词汇,并用turtle函数绘制柱状图
- 人工智能从入门到精通(14)
- 数据结构实验之图论四:迷宫探索
- 欢迎使用CSDN-markdown编辑器
- Ubuntu 14.04 下搭建SVN服务器
- 算法期中1004. Kahn算法求解有向无环图拓扑排序
- banner无限自动轮播图片
- advice for machine learning
- macOS微信客户端插件,支持免认证登录、多账号登录以及防撤回
- struts2值栈一些问题
- 两种方式综合请求网络数据