1,不剪枝也能過。
2,如果剪枝,
根據回溯的過程,會先求到dfs(n)最后那個結點,再是dfs(n-1)..dfs(1)。
剪枝應當是在結構體中N[i]增加一個變量vnow,
vnow初值為0,記錄從該結點開始搜索所有int dfs(i)的返回值,并不斷更新使其最大,
當搜索到i的時候,如果N[i].vnow不為0,則需要滿足N[i].vnow+當前temp(前面的可行系列的總值)>vmax(所要求的最大值的當前值),若vnow為0,則可以不滿足這個條件,因為這是第一次。
2,如果剪枝,
根據回溯的過程,會先求到dfs(n)最后那個結點,再是dfs(n-1)..dfs(1)。
剪枝應當是在結構體中N[i]增加一個變量vnow,
vnow初值為0,記錄從該結點開始搜索所有int dfs(i)的返回值,并不斷更新使其最大,
當搜索到i的時候,如果N[i].vnow不為0,則需要滿足N[i].vnow+當前temp(前面的可行系列的總值)>vmax(所要求的最大值的當前值),若vnow為0,則可以不滿足這個條件,因為這是第一次。
只有注冊用戶登錄后才能發表評論。 | ||
【推薦】100%開源!大型工業跨平臺軟件C++源碼提供,建模,組態!
![]() |
||
相關文章:
|
||
網站導航:
博客園
IT新聞
BlogJava
博問
Chat2DB
管理
|
||
|
| |||||||||
日 | 一 | 二 | 三 | 四 | 五 | 六 | |||
---|---|---|---|---|---|---|---|---|---|
28 | 29 | 30 | 1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 | |||
12 | 13 | 14 | 15 | 16 | 17 | 18 | |||
19 | 20 | 21 | 22 | 23 | 24 | 25 | |||
26 | 27 | 28 | 29 | 30 | 31 | 1 | |||
2 | 3 | 4 | 5 | 6 | 7 | 8 |