题目链接
4的倍数那么直接对输入的数据取余吧。
然后我们得到了若干个0 1 2 3.然后咋办呢
分类讨论也可以,暴力枚举也可以((建议枚举
ll v[5];
ll s[10];
signed main()
{
ll t;
read(t);
while(t--)
{
ll n;
read(n);
memset(v,0,sizeof(v));
memset(s,0,sizeof(s));
for(int i=1; i<=n; i++)
{
ll x;
read(x);
v[x%4]++;
}
for(int i=0; i<=min(4*1ll,v[0]); i++)
{
for(int j=0; j<=min(4*1ll,v[1]); j++)
{
for(int k=0; k<=min(4*1ll,v[2]); k++)
{
for(int p=0; p<=min(4*1ll,v[3]); p++)
{
if(i+j+k+p==4)
{
s[(i*0+j*1+k*2+p*3)%4]=1;
}
}
}
}
}
if(s[0]==1)
{
printf("YES\n");
}
else
{
printf("NO\n");
}
}
}