昨天参加网易笔试遇到的,好难啊!!!

题目要求——Java(只记得大致):

    1、输入一个值,表示接下来要输入数组的个数;范围:1~10^7

    2、输入一个值,表示下面数组里元素的个数;    范围:2~10^9

    3、输入一个数组A;                                            里面元素值的范围:0~10^7

    4、对数组进行各种重排列,要求满足A[i]*A[i+1]能被4整除(i>=0 && i<A.length-1);

    5、如果数组的某种重排列能够满足这种要求,则输出“Yes”,否则输出“No”

    如:

    2

    3

    1  10   100

    4

    1  2  3  4

输出结果为:

    Yes

    No

博客中的大神看到了帮忙想一下,求解答!!!  谢谢各位大神了!


我的思路(仅供参考):将每一个数都换成2、4、非偶数三种,再统计每一种的个数,如果4的个数大于数组总个数的一半,则可以,。。。