문제는 트리가 주어진다. 그 중 삭제 할 노드도 주워진다.
리프노드(자식이 없는 노드)의 개수를 찾아라.
dfs로 돌아다니면서, dfs를 수행하는 노드 중 다른 곳으로 재귀호출을 하지 않는 노드는 리프노드라고 판단했다.
맞는 것 같다. 그런데 답이 나오지 않았다.
다시 문제를 들여다 보면서 알아 낸 것은
=> 만약 부모가 없다면 (루트) -1이 주어진다.
이 조건이다.
트리가 반드시 하나라는 보장은 없었던 것이다. 트리는 2개일 수도 세 개 일수도 있다.
몇 가지 소스부분을 고치고 제출했더니 통과
'알고리즘문제풀이' 카테고리의 다른 글
2504_괄호의 값 (0) | 2015.04.02 |
---|---|
2493_탑 (0) | 2015.04.01 |
1991_트리순회 (0) | 2015.04.01 |
더블릿_달팽이 (0) | 2015.03.30 |
더블릿_미 로(labyrinth) (0) | 2015.03.29 |