POJ 3219 二项式系数奇偶性的判定

简介:

这题想了很久 因为题里的给了递推公式 但是数据范围太大 用不了递归打表的 然后上网发现了

这个 其实还有N!/(K!(N-K)!)分别求出 N! K! (N-K)!中因子2的个数 如果N!中2的因子个数大于

后两项的和 那么就是偶数 如果等于就为奇数  

判定准则Cn^m(m≤n)的奇偶性取决于m和n—m的二进制表达式中是否存在位于同一数位上的

两个数码都是1,如果存在,Cn^m是偶数,否则Cn^m就是奇数.

#include <iostream>
#include<cstdio>
using namespace std;

int main()
{
    int n,k;
    while(~scanf("%d%d",&n,&k))
    printf("%d\n", k&(n-k)?0:1);
    return 0;
}

下面是我做的

N!/(K!(N-K)!)分别求出 N! K! (N-K)!中因子2的个数 如果N!中2的因子个数大于

后两项的和 那么就是偶数 如果等于就为奇数 

#include <iostream>
#include<cstdio>
using namespace std;

int main()
{
    int n,k;
    long long a[35];
    a[1]=2;
    for(int i=2; i<=32; i++)
        a[i]=2*a[i-1];
    while(~scanf("%d%d",&n,&k))
    {
        if(n==k||k==0)
        {
            printf("1\n");
            continue;
        }
        int w=0,b=0,c=0;
        for(int i=1; i<=32; i++)
        {
            w+=n/a[i];
            b+=k/a[i];
            c+=(n-k)/a[i];
        }
        if(w>b+c)
            printf("0\n");
        else
            printf("1\n");
    }
    return 0;
}

目录
相关文章
|
6月前
考研高数之无穷级数题型一:判断收敛性、求收敛半径以及收敛域和收敛区间(题目讲解)
考研高数之无穷级数题型一:判断收敛性、求收敛半径以及收敛域和收敛区间(题目讲解)
327 0
|
数据安全/隐私保护
|
算法 内存技术
求组合数三种算法
求组合数三种算法
79 0
|
算法
绝对值不等式(贪心)
复习acwing算法基础课的内容,本篇为讲解基础算法:贪心——绝对值不等式,关于时间复杂度:目前博主不太会计算,先鸽了,日后一定补上。
127 0
绝对值不等式(贪心)
7-166 二分法求多项式单根 (20 分)
7-166 二分法求多项式单根 (20 分)
119 0
康托展开公式与全排列应用
康托展开公式与全排列应用
122 0
|
机器学习/深度学习
【组合数学】递推方程 ( 非齐次部分是 指数函数 且 底是特征根 | 求特解示例 )
【组合数学】递推方程 ( 非齐次部分是 指数函数 且 底是特征根 | 求特解示例 )
156 0
|
机器学习/深度学习 Windows
【组合数学】递推方程 ( 常系数线性齐次递推方程 | 常系数、线性、齐次 概念说明 | 常系数线性齐次递推方程公式解法 | 特征根 | 通解 | 特解 )
【组合数学】递推方程 ( 常系数线性齐次递推方程 | 常系数、线性、齐次 概念说明 | 常系数线性齐次递推方程公式解法 | 特征根 | 通解 | 特解 )
410 0
|
机器学习/深度学习
【组合数学】递推方程 ( 非齐次部分是指数的情况 | 非齐次部分是指数的情况示例 )
【组合数学】递推方程 ( 非齐次部分是指数的情况 | 非齐次部分是指数的情况示例 )
141 0