不要用dfs!dfs并不是本题正解!
如果你用的是dfs:
1.关于bool数组vis的标记:一定注意要在return判断后再进行标记,否则会出现 本来不应该标记,但是标记上了 的结果
2.不要忘记vis数组回溯!在左右递归后将vis还原;
3.本题dfs会出现#1被卡时间,可以用玄学卡过去(创建一个全局的cnt,每次调用dfs时cnt++,若cnt>1e6则return)