Python-交友程式設計

求該題目程式碼

A可以找尋B的朋友,去認識第二層新的朋友,透過這種方法,可以認識一層又一層新的朋友。
求成員X, Y是否有機會可以互相認識。

from collections import deque

def BFS(friends, one, two):
    q = deque()
    q.append(one)
    s = set()
    s.add(one)
    while len(q) > 0:
        friend = q.popleft()
        for i in friends[friend]:
            if i not in s:
                q.append(i)
                s.add(i)
        if friend == two:
            return 'Yes'
    return 'NO'
N, X, Y = map(int, input(">>>").split())

d = {}
for _ in range(N):
    x, y = map(int, input(">>>").split())
    d[x] = d.get(x, []) + [y]
    d[y] = d.get(y, []) + [x]

result = BFS(d, X, Y)
print(result)

这个跟刚才的那个学校选择的是一样的道理

来自台湾的同胞?

https://blog.csdn.net/IT_charge/article/details/113105385