一、链接
二、题目
三、注意
1.测试点二范围,刚开始没过,问题是我的数组sum_array[1024],改成sum_array[2041]就对了。
四、代码
#include<bits/stdc++.h>
using namespace std;
int main()
{
int n=0,k=0,time=0,sum=0,a=0,flag=0;
cin>>n>>k;
int num[50]={0};
int sum_array[2041]={0};
for(int i=0;i<n;i++)
{
cin>>num[i];
}
for(int x=0;x<n;x++)
for(int y=x+1;y<n;y++)
for(int z=y+1;z<n;z++)
for(int q=z+1;q<n;q++)
{
sum=num[x]+num[y]+num[z]+num[q];
sum_array[sum]=1;
// printf("%d\n",sum);
}
for(int i=0;i<k;i++)
{
flag=1;
cin>>time;
for(int j=0;j<time;j++)
{
cin>>sum;
if(sum_array[sum*4]==0)
flag=0;
}
if(flag==1)
printf("Yes\n");
else
printf("No\n");
}
return 0;
}