문제링크

https://swexpertacademy.com/main/code/problem/problemDetail.do?contestProbId=AV14geLqABQCFAYD

풀이

문제 제약 사항으로 주어진 인풋은 이진트리이다. 데이터 저장 가이드의 방식으로 트리를 저장하고 트리 탐색 알고리즘으로 99번 노드를 찾으면 됨

from collections import deque
 
for test_case in range(1,11):
    a,b = map(int,input().split())
    leftTree = [-1 for _ in range(100)]
    rightTree = [-1 for _ in range(100)]
     
 
    ipt = list(map(int, input().split()))
 
    for i in range(0,b*2,2):
        if leftTree[ipt[i]] == -1:
            leftTree[ipt[i]] = ipt[i+1] 
        else:
            rightTree[ipt[i]] = ipt[i+1]
 
    answer=0
 
    q=deque()
    q.append(0)
		//BFS CODE
    while q:
        now = q.popleft()
 
        if now == 99:
            answer = 1
            break
        if leftTree[now]!= -1:
            q.append(leftTree[now])
        if rightTree[now]!= -1:
            q.append(rightTree[now])
 
 
    print(f'#{test_case} {answer}')