代码如下:
#include <bits stdc++.h>
using namespace std;
const int M=105,N=1e4+50;
bool f[M][N];
int main()
{
int n;
while(scanf("%d",&n)!=EOF)
{
int m=10000;
for(int i=0;i<=n;i++) f[i][0]=true;
for(int i=1;i<=n;i++)
{
int x;scanf("%d",&x);
for(int j=0;j<=m;j++)
{
if(f[i-1][j])
{
f[i][j]=true;
f[i][j+x]=true;
f[i][abs(j-x)]=true;
}
}
}int q;scanf("%d",&q);
while(q--)
{
int x;scanf("%d",&x);
if(x>m||!f[n][x]) puts("NO");
else puts("YES");
}
memset(f,false,sizeof f);
}
}
```</bits>