728x90
반응형
https://www.acmicpc.net/problem/1068
/*
신경써야 할 부분은 바로 :
1. 2% root노드가 0번이 아닐때 발생할수 있다.
2. 78% 루트노드가 리프노드가 될 수 있다.
3. 99% 루트 노드를 삭제하면 0이 나와야한다.
그래서 삭제된 노드와 자식 노드들을 모두 의미없는 값으로 채우고
의미없는 값이 아니며, 자식 노드가 없는 노드의 수를 세면 답이다.
*/
import sys
input = sys.stdin.readline
n = int(input())
tree = list(map(int, input().split()))
d = int(input())
def dfs(del_node):
tree[del_node] = -2
for i in range(n):
if del_node == tree[i]:
dfs(i)
dfs(d)
cnt = 0
for i in range(n):
if tree[i] != -2 and i not in tree:
cnt += 1
print(cnt)
풀 때 어려웠던 점 또는 느낀점 :
그동안 PS를 안한 것은 아니지만
블로그를 쓰는건 오랜만이라 익숙하지가 않네요
최근에 공익 복무를 시작하며 훈련소를 다녀왔는데
확실히 다녀오니 뇌가 비워지네요...
재활 PS 열심히 해야할 것 같아요
728x90
반응형
'Problem Solving' 카테고리의 다른 글
[Python][백준 1595] 북쪽나라의 도로 (0) | 2024.03.20 |
---|---|
[Python][백준 2251] 물통 (5) | 2024.03.19 |
[C++][백준 1406] 에디터 (0) | 2022.01.25 |
[C++] [백준 2783] 삼각 김밥 (0) | 2021.08.09 |
[C++] [LeetCode 543] Diameter of Binary Tree (0) | 2021.08.09 |
댓글