建两个图,然后用dfs跑第一个图。
在第一个图中,dfs每次抵达终点都会生成一个图(有数字被取出),但是不在第一个图里进行修改,而是修改第二个图,修改完后,在第二个图中再进行一遍dfs,并在此时求和,完成后在第一个图里回溯。在第一个图中的回溯也仅会修改第二个图。
感觉这样比较简单粗暴的思路对于初学者来说会更加好理解。。。