acmer 发布的文章

#include<cstdio>
#include<algorithm>
using namespace std;
int a[100];
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;
}
void solve(int n,int k)
{
    if(dfs(0,0))
        printf("Yes\n");
    else 
        printf("No\n");
}
int main()
{
    int i;
    scanf("%d",&n);
    getchar();
    for(i=0;i<n;i++)
        scanf("%d",&a[i]);
    getchar();
    scanf("%d",&k);
    solve(n,k);
    return 0;
}