ZJNU 2349 - 抽抽抽

为4的倍数,列出所有可能情况再判断即可

处理输入的数据对4取模

可得

4444

2244

2222

1111

3333

1133

1223

1344

1124

3324

共十种情况

所以得出答案

 1 #include<bits/stdc++.h>
 2 using namespace std;
 3 int main(){
 4     int T,n,i,d,ar[4];
 5     scanf("%d",&T);
 6     while(T--){
 7         fill(ar,ar+4,0);
 8         scanf("%d",&n);
 9         for(i=0;i<n;i++){
10             scanf("%d",&d);
11             ar[d%4]++;
12         }
13         if(ar[0]>=4||ar[0]>=2&&ar[2]>=2||ar[2]>=4||ar[1]>=4||ar[3]>=4||ar[1]>=2&&ar[3]>=2||ar[1]>=1&&ar[3]>=1&&ar[2]>=2||ar[1]>=1&&ar[3]>=1&&ar[0]>=2||ar[1]>=2&&ar[2]>=1&&ar[0]>=1||ar[3]>=2&&ar[2]>=1&&ar[0]>=1)
14             puts("YES");
15         else
16             puts("NO");
17     }
18     
19     return 0;
20 }

猜你喜欢

转载自www.cnblogs.com/stelayuri/p/12238926.html