题目来源:https://www.nowcoder.com/question/next
题意
中文题意不再解释,,,,
思路
题目可转化为求4的倍数的个数,任何一个数乘以4的倍数都会是4的倍数。
num_4表示给出的4的倍数,那么num_4个(不为0)的4的倍数可以保证num_4+1个数字乘积是4的倍数,呈 X4X4X状。
其次,偶数*偶数也是4的倍数,那么只需要求一下奇数的个数,用4的倍数比较下可AC。
代码
#include<stdio.h>
int main()
{
int T;
scanf("%d",&T);
while(T--)
{
int n,num_1=0,num_4=0;
scanf("%d",&n);
for(int i=0;i<n;i++)
{
int tmp;
scanf("%d",&tmp);
if(tmp%2==1)
num_1++;
else if(tmp%4==0)
num_4++;
}
if(num_4!=0) num_4++;
puts(num_4>=num_1?"Yes":"No");
}
return 0;
}