AC 2
- using recursive to implement DFS