zoukankan      html  css  js  c++  java
  • CodeForces 1363A. Odd Selection

    题意:从数组a中选出x个数,并且这x个数的和等于奇数,求是否能组成奇数。

    分析:

    我们先统计奇数个数和偶数个数,可以看出图片里面的规律,奇数 + 奇数 = 偶数,奇数 + 偶数 = 偶数,也就是我们必须要有奇数个奇数,才能组成奇数的和,而偶数对和是没有影响的,奇数加偶数还是奇数,那么我们i 遍历1, 3, 5, 7,这些个数,然后用x去减去i,就是我们用偶数去填补的,注意减去后的偶数个数必须是>=0,大多数wa3都是这里的原因。(悲伤!)

    #include <iostream>
    #include <cstdio>
    #include <cstring>
    #include <algorithm>
    
    using namespace std;
    
    int main()
    {
    	int t;
    	scanf("%d", &t);
    
    	while (t--)
    	{
    		int n, x;
    		scanf("%d%d", &n, &x);
    
    		//奇数个数、偶数个数
    		int n1 = 0, n2 = 0;
    		int q;
    		for (int i = 1; i <= n; ++i)
    		{
    			scanf("%d", &q);
    			if (q & 1) ++n1;
    			else ++n2;
    		}
    
    		bool flag = false;
    		for (int i = 1; i <= n1; i += 2)
    		{
    			int u = x - i;
    			if (u <= n2 && u >= 0)
    			{
    				flag = true;
    				puts("Yes");
    				break;
    			}			
    		}
    		if (!flag)
    		{
    			puts("No");
    		}
    
    	}
    
    
    
    	return 0;
    }
    
    
    
    
    
    
    
    
    
    
    
    
    
    
  • 相关阅读:
    新手建站必看
    88.com域名邮箱免费注册了
    屏蔽博客园的广告
    跳过烦人的hCaptcha验证
    pap.er 专为 Mac 设计的壁纸应用
    TrafficMonitor
    利用CloudFlare自动DDNS
    P.SDA1.DEV
    谷歌浏览器又隐藏的HTTPS和WWW前缀
    谷歌浏览器扩展 crx 下载
  • 原文地址:https://www.cnblogs.com/pixel-Teee/p/13023263.html
Copyright © 2011-2022 走看看