10.N个整数中查找是否相加为K[深度搜索]
2016-03-18 04:33
316 查看
/*摘自书本,这种算法很绕!*/
#include <iostream> using namespace std; int a[]={1,2,3,5}; int n=sizeof(a)/sizeof(int),k=12; bool dfs(int i,int sum) { if(i==n) return sum==k; if(dfs(i+1,sum)) return true; if(dfs(i+1,sum+a[i])) return true; return false; } int main() { if(dfs(0,0)) cout<<"yes"; else cout<<"no"; return 0; }
相关文章推荐
- PCL Notes 1
- sizeof()用法汇总
- [复习]jQuery知识点
- Start as a fresh.....
- 仿Smarty替换模板标签时遇到的问题
- 使用GPG对文件进行加密解密批处理
- 黑客们很喜欢骇客交锋,虽然本片不被影评人认可
- 《愤怒的小鸟2》制作公司再裁人260人
- navicat 10.1.7的序列号
- POJ 3122 & 3258 & 3273 #二分
- POJ 1905 Expanding Rods#二分
- POJ 1845 Sumdiv#质因数分解+二分
- 【菜鸟手打js】@弹出遮罩层显示大图之二
- Android中ListActivity用法实例分析
- +++AJAX POST&跨域 解决方案 - CORS+++
- Android之 ListActivity 的使用和在 ListView中添加图片文字
- Yii2 Post请求的时候出现400错误
- 我与小娜(37):AlphaGo胜出表明机器发明不是梦
- Android随笔之——PackageManager详解
- AndroidMainfest.xml文件中的android属性