对于1,2,4,7这四个数,满足任意的数想加,满足和为13的
# include <iostream>
# include <cstdio>
int a[5]={1,2,4,7};;
int n,k;
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(){
int k = 13;
n = 4;
if(dfs(0,0)) printf("YES\n");
else printf("NO\n");
return 0;
}

本文介绍了一个简单的递归算法,用于解决由1、2、4、7这四个数中选取若干个数相加得到13的问题。通过递归深度优先搜索的方法,判断是否能够通过这些数的组合达到指定的目标和。
968

被折叠的 条评论
为什么被折叠?



