int n;     cin >> n;     vector<int> counter(5, 0), nums(n);     for (int i = 0; i < n; i++) {       cin >> nums[i];       if (nums[i] % 4 == 0)         counter[4]++;       else if (nums[i] % 2 == 0)         counter[2]++;       else         counter[1]++;     }     int d = counter[1] + (counter[2] >= 1);     if (d - counter[4] > 1)       cout << "No" << endl;     else       cout << "Yes" << endl; 贴个我的,唯一AC的题目。只要统计1的和4的个数,2只需要统计其是否出现。 2必须全部放在一起,可把全部放在一起的2看作是1个1。那么只需要考虑4的数目和1的数目之间的关系了。
点赞 评论

相关推荐

昨天 11:21
门头沟学院 Java
总包48.5w,意想不到的价格
无情咸鱼王的秋招日记之薛定谔的Offer:R
点赞 评论 收藏
分享
11-15 19:28
已编辑
蚌埠坦克学院 硬件开发
点赞 评论 收藏
分享
牛客网
牛客企业服务