https://swexpertacademy.com/main/code/problem/problemDetail.do?contestProbId=AV15B1cKAKwCFAYD
BFS를이용해 연결된 노드들과의 거리를 구한후 거리가 가장 멀면서 노드값이 가장 큰 노드를 찾으면됨
from collections import deque
for tcase in range(1,11):
answer=[0,0]
a,start=map(int,input().split())
inputs = list(map(int,input().split()))
info = [[0 for _ in range(101)] for _ in range(101)]
for i in range(0,a,2):
info[inputs[i]][inputs[i+1]]=1
visit = [-1 for _ in range(101)]
q=deque()
q.append([start,0])
while q:
now,dist = q.popleft()
if answer[1]<dist:
answer[0]=now
answer[1]=dist
elif answer[1]==dist and answer[0]<now:
answer[0]=now
for next in range(1,101):
if visit[next]==-1 and info[now][next]==1:
visit[next]=dist+1
q.append([next,dist+1])
print(f"#{tcase} {answer[0]}")