선생님 2-R 문제 질문드립니다.
아. 제가 푼 방식은 while 문을 통해 a의 노드의 자식노드를 뒤에서부터 하나씩 탐색해주어 탐색한 자식 노드들은 .pop_back() 해주어 v[a] 사이즈를 줄여준 다음에 v[a].size()가 0이 될 시 -1값을 추가해주어 v[a].size() 가 0이 안되게 하여 size가 0인 노드들의 갯수를 검색해주는 것입니다. 예를 들어, 사이트 예제 2에서 v[0]={1,2}, v[1]={3,4}, v[2]={}, v[3]={}, v[4]={} 이므로 dfs(1)을 할 시 v[1][1]인 4를 통해 v[4]를 dfs 진행해 주고 size가 0이므로 -1을 추가해줍니다. 그리고 v[1]에서 pop_back을 통해 size를 줄입니다. 다음에는 v[1][0]인 3을 통해 v[3]을 dfs 진행해 주고 v[3]의 size가 0이므로 마찬가지로 -1을 추가해주고, v[1]에서 pop_back을 통해 size를 줄여줍니다. 이렇게 2번 진행해준 결과 v[1]의 size가 0이 되므로 v[1]에도 마찬가지로 -1을 .push_back을 해줍니다. 이 결과 v[0]={1,2}, v[1]={-1}, v[2]={}, v[3]={-1}, v[4]={-1} 이 되어 size가 0인 갯수를 세주면 1이 되므로 답이 1이 되는 과정입니다. 최대한 제가 생각한걸 표현해봤는데 맞는지 모르겠네요.. ㅜㅜ