#include <cstdio>
#include <cstdlib>
#include <algorithm>
using namespace std;
int Union[10005];
int FindUnion(int x){
if(Union[x] == x)
return x;
return Union[x] = FindUnion(Union[x]);
}
void SetUnion (int x, int y){
Union[FindUnion(x)] = FindUnion(y);
}
int main(){
int n, m, k, x, y;
while(scanf("%d %d", &n, &m) != EOF){
for(int i = 1; i <= n; i++)
Union[i] = i;
for (int i = 0; i < m; ++i){
scanf("%d %d", &x, &y);
SetUnion(x ,y);
}
scanf("%d", &k);
for (int i = 1; i < n; ++i)
if (FindUnion(i) == FindUnion(k)){
printf("%d\n", i);
break;
}
}
}
沒有留言:
張貼留言