what dp其实是dfs(深搜)的简版

来源:互联网 发布:html转php 编辑:程序博客网 时间:2024/05/22 01:46

直接看代码,怎么运行的还是搞不懂,
mmp,跑了好几遍,都没跑出程序的运行步骤,;
感觉智商好低,但是能敢说这就是01背包的函数形式;

#include<iostream>#include<cstdio>#include<cmath>#include<cstring>#include<string>#include<algorithm>#include<stack>#include<queue>#include<cctype>using namespace std;int n, k;int a[100];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;}/*41 2 4 713*/int main(){    while (cin>>n)    {        for (int i = 0; i < n; i++)            cin >> a[i];    //  int k;        cin >> k;        if (dfs(0,0))            puts("Yes");        else            puts("No");    }    return 0;}
0 0
原创粉丝点击