国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

DFS學習筆記

2019-11-09 19:37:39
字體:
來源:轉載
供稿:網友

DFS(深度優先搜索) 比較暴力功利,大意是將某一個狀態開始不斷轉移到下一個狀態,直到不能轉移,然后退回到前一個分枝的另一個下一個狀態以此類推,直到找到最終的解

心得:找到終止條件和分支的條件

例題:從N個數中找到其中的幾個數使他們的和恰好為K

#include<iostream>#define maxn 10000using namespace std;int a[maxn];int n,k;bool dfs(int i,int sum){ if(i==n) return sum==k; //終止條件 if(dfs(i+1,sum)) return true; //分支條件 else if(dfs(i+1,sum+a[i])) return true; return false;}int main(){ cin>>n; for(int i=0;i<n;i++) cin>>a[i]; cin>>k; if(dfs(0,0)) cout<<"yes"<<endl; else cout<<"no"<<endl; return 0;}
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 华阴市| 图片| 忻城县| 新沂市| 肇源县| 射阳县| 桑日县| 黄骅市| 遂宁市| 胶州市| 冕宁县| 张掖市| 台南市| 苍溪县| 柳河县| 宕昌县| 乐都县| 尼玛县| 固阳县| 八宿县| 封开县| 西和县| 黄冈市| 长沙市| 思南县| 大丰市| 宁河县| 新疆| 万山特区| 深州市| 河东区| 富蕴县| 鲁甸县| 石景山区| 阿克| 佛冈县| 环江| 彭阳县| 朝阳区| 张家界市| 桂东县|