部分和问题
来源:互联网 发布:淘宝上在哪里买微信号 编辑:程序博客网 时间:2024/06/05 11:36
///给定a1,a2...an,判断是否可以从中取出若干数,使他们的和恰为k.
#include<iostream>
using namespace std;
int a[10];
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()
{
cin >> n;
for(int i=0; i<n; i++)
cin >> a[i];
cin >> k;
int ans=dfs(0,0);
if(ans)
cout << "Yes\n";
else
cout << "No\n";
return 0;
}
#include <iostream>
#include<cstring>
using namespace std;
int a[10];
bool vis[10];
int n;
int sum = 0;
int k;
int dfs(int i)
{
if(i>n)
return 0;
if(sum>=k)
return 0;
if(vis[i])
return 0;
vis[i] = true;
sum += a[i];
if(dfs(i+1))
return sum;
if(sum == k)
return sum;
vis[i] = false;
sum -= a[i];
if(dfs(i+1))
return sum;
return 0;
}
int main()
{
memset(vis,false,sizeof(vis));
cin >> n;
for(int i=0; i<n; i++) cin >> a[i];
cin >> k;
if(dfs(0))
cout << "Yes" << endl;
else
cout << "No" << endl;
return 0;
}
- DFS 部分和问题
- 部分和问题
- 多重部分和问题
- 部分和问题
- 部分和问题
- 部分和问题
- nyoj 部分和问题
- nyoj-部分和问题
- nyoj1058部分和问题
- 部分和问题
- nyoj 部分和问题
- 部分和问题
- 部分和问题
- 部分和问题
- 多重部分和问题
- 部分和问题
- 部分和问题
- 部分和问题
- javac编译servlet类出现的一系列问题及分析解决(javac编译servlet找不到javax.servlet.*包的问题)
- Java数据类型转换汇总 (持续更新)
- 文章标题@property生成的是私有变量,即,实在implementation 中生明的
- 关于python 的url_encode关于的嵌套字典类型变量的编码扩展
- 小区的路
- 部分和问题
- 蓝桥杯单片机设计与开发笔记(三)
- MySQL系列(一)mysql的安装
- 例程3. 串口 -- 慕司板IAP15
- Objective-C中@property的所有属性详解
- Java实现字符串倒序输出的常用方法小结
- 高速系统中滤波电容的选择
- fzu2127
- notepad++ 编辑GAMS文件