Intuition
Easy little problem. I initially implement a DFS to create the parent pointers followed by a BFS on the target to find nodes k distance from it. I still think this is the most well-rounded approach. You can also just do a DFS on the modified tree while keeping track of distance from the target. This just feels wrong to me, so I will stick with BFS.