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的数目之间的关系了。
点赞 评论

相关推荐

求个付费实习岗位:这种就是吃满时代红利又没啥技术水平,只能靠压力学生彰显优越感的老登,别太在意了
点赞 评论 收藏
分享
牛客网
牛客网在线编程
牛客网题解
牛客企业服务