ZCMU 5261: 通讯录(dfs)

Description

某天Mocha想和多年未联系的好兄弟一起去玩,却发现他的联系方式不见了,于是Mocha打开通讯录打算通过其他人来找到他的手机号码。

你作为通讯管理员,想帮助一下可怜的Mocha。通讯录是由 m 个整数对 (x,y) 组成,表示 x 有 y 的电话号码,Mocha的序号是 1,他的好兄弟的序号是 n。现在Mocha想知道他到底能不能找到他兄弟的手机号码。

Input

第一行包含一个整数 t(t≤10),代表测试数据的组数。

每组样例的第一行分别是两个整数 n(1

接下来的m行,每行有两个整数 x(1≤x≤n),y(1≤y≤n)。

Output

对于每组测试样例,如果Mocha最终能联系到他的好兄弟,输出Yes,否则输出No。

Sample Input

2 5 5 1 3 2 3 3 4 2 4 4 5 4 3 1 2 2 3 4 1

Sample Output

Yes No
又是做了好久的一道题,之前一直把vis数组放在了输入中判断,原来是要放在dfs中。。。。
#include
using namespace std;
int n,m;
vector > v(1);
int vis[51][51];
int flag;
void dfs(int x)
{
	if(x==n)
	{
		flag=1;
		return ;
	}
	for(int i=0;i

你可能感兴趣的:(算法,深度优先,c++)