AtCoder Beginner Contest 069

C - 4-adjacent

Problem Statement

We have a sequence of length Na=(a1,a2,…,aN). Each ai is a positive integer.

Snuke's objective is to permute the element in a so that the following condition is satisfied:

  • For each 1iN1, the product of ai and ai+1 is a multiple of 4.

Determine whether Snuke can achieve his objective.

Constraints

  • 2N105
  • ai is an integer.
  • 1ai109

Input

Input is given from Standard Input in the following format:

N
a1 a2  aN

Output

If Snuke can achieve his objective, print Yes; otherwise, print No.

Sample Input 1

3
1 10 100

Sample Output 1

Yes

One solution is (1,100,10).


Sample Input 2

4
1 2 3 4

Sample Output 2

No

It is impossible to permute a so that the condition is satisfied.


Sample Input 3

3
1 4 1

Sample Output 3

Yes

The condition is already satisfied initially.


Sample Input 4

2
1 1

Sample Output 4

No

Sample Input 5

6
2 7 1 8 2 8

Sample Output 5

Yes
yes的条件:总数的一半要 <= 被4整除数的个数  | |  被4整除数的个数*2+被2整除但不能被4整除数的个数 <= 总数。


#include   
#include   
#include   
using namespace std;  
int a[100005];  
int main()  
{  
    int n,f=0,i,x=0,y=0;  
    while(cin>>n)  
    {  
        for(i=0;i>a[i];  
        }     
           for(i=0;i=n||x>=n/2)  
                 f=1;  
            }         
        if(f)cout<<"Yes"<




你可能感兴趣的:(AtCoder Beginner Contest 069)