importsysfromtypingimportListdefsolution(N:int,tree:List[int],remove:int):answer=0defdfs(remove_node):# 나중 판별을 위한 무시해도 되는 숫자 (어차피 제거됨)
tree[remove_node]=-999foriinrange(N):# remove_node의 자식이 tree[i]라면
ifremove_node==tree[i]:dfs(i)dfs(remove)foriinrange(N):# 아까 설정한 무시해도 되는 제거된 노드가 아닐 때
# and
# i의 자식이 없을 때
iftree[i]!=-999andinotintree:answer+=1returnanswerN=int(sys.stdin.readline().rstrip())tree=list(map(int,sys.stdin.readline().rstrip().split()))remove=int(sys.stdin.readline().rstrip())print(solution(N,tree,remove))
Leave a comment