您现在的位置是:主页 > news > 淄博网站建设服务/重庆网站seo费用
淄博网站建设服务/重庆网站seo费用
admin2025/6/13 17:51:39【news】
简介淄博网站建设服务,重庆网站seo费用,做网站数据库及相关配置,宁波外贸公司联系方式给定一个有N个顶点和E条边的无向图,请判断给定的两个顶点之间是否有路径存在。 假设顶点从0到N−1编号。 输入格式: 输入第1行给出2个整数N(0<N≤10)和E,分别是图的顶点数和边数。 随后E行,每行给出一条边的两个端点。每行中的数字之间用…
淄博网站建设服务,重庆网站seo费用,做网站数据库及相关配置,宁波外贸公司联系方式给定一个有N个顶点和E条边的无向图,请判断给定的两个顶点之间是否有路径存在。 假设顶点从0到N−1编号。
输入格式: 输入第1行给出2个整数N(0<N≤10)和E,分别是图的顶点数和边数。
随后E行,每行给出一条边的两个端点。每行中的数字之间用…
给定一个有N个顶点和E条边的无向图,请判断给定的两个顶点之间是否有路径存在。 假设顶点从0到N−1编号。
输入格式:
输入第1行给出2个整数N(0<N≤10)和E,分别是图的顶点数和边数。
随后E行,每行给出一条边的两个端点。每行中的数字之间用1空格分隔。
最后一行给出两个顶点编号i,j(0≤i,j<N),i和j之间用空格分隔。
输出格式:
如果i和j之间存在路径,则输出"There is a path between i and j.",
否则输出"There is no path between i and j."。
输入样例1:
7 6
0 1
2 3
1 4
0 2
1 3
5 6
0 3
结尾无空行
输出样例1:
There is a path between 0 and 3.
结尾无空行
输入样例2:
7 6
0 1
2 3
1 4
0 2
1 3
5 6
0 6
结尾无空行
输出样例2:
There is no path between 0 and 6.
结尾无空行
C++(g++)
using namespace std;
#include <algorithm>
#include<cstring>
#include <iostream>
#include<string>
#include<stdio.h>
#include<stdlib.h>
#include<time.h>
#include<string.h>
#include<iomanip>
#include<sstream>
#include<vector>bool DFS(const vector<vector<int> >&v, vector<int>&visited,int a,const int& b)//a代表当前访问到的节点,b代表目标节点
{visited[a] = 1;if (a == b)return true;for (int i = 0; i < v[a].size(); i++){if (v[a][i] && visited[i] == 0)return DFS(v, visited, i, b);}return false;
}
int main()
{int N, E, a, b; cin >> N >> E;vector<vector<int> >v(N, vector<int>(N, 0));vector<int>visited(N, 0);//初始化访问数组for (int i = 0; i < E; i++){cin >> a >> b;v[a][b] = 1;}cin >> a >> b;if (DFS(v, visited, a, b))cout << "There is a path between " << a << " and " << b << endl;else cout << "There is no path between " << a << " and " << b << endl;return 0;
}