博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
判断C(n,k)的奇偶性 soj2668
阅读量:7062 次
发布时间:2019-06-28

本文共 742 字,大约阅读时间需要 2 分钟。

C(n,k)

 

Description

求组合数 C ( n , k) 的奇偶性

Input

文件是多case的,每行输入一个 n (1<=n<=10^9)和 k(0<=k<=n) ,当 n 等于 0 且 k 等于 0 时输入结束

Output

对于每一个case,输出一行,为组合数 C ( n , k) 的奇偶性,奇输出1,偶输出0

Sample Input

2 0 2 1 0 0

Sample Output

1 0

 

 题意:求C(n,k)的奇偶性。显然把C(n,k)的值直接求出来进行判断是不可行的。

 由于C(n,k)=n!/k!*(n-k)!,要判断奇偶性,即比较分子与分母含有因子2的个数,因此就转化为求n!中含有因子2的个数。

 

 
#include
<
iostream
>
using
namespace
std;
int
count(
int
n)
{
int
num
=
0
;
while
(n)
{
num
+=
n
/
2
;
n
=
n
/
2
;
}
return
num;
}
int
main(
void
)
{
int
n,k;
while
(scanf(
"
%d%d
"
,
&
n,
&
k)
==
2
&&!
(n
==
0
&&
k
==
0
))
{
int
a,b,c;
a
=
count(n);
b
=
count(k);
c
=
count(n
-
k);
if
(a
>
b
+
c)
printf(
"
0\n
"
);
else
printf(
"
1\n
"
);
}
return
0
;
}
http://www.cnblogs.com/dolphin0520/archive/2011/04/12/2014026.html
你可能感兴趣的文章
OSS控制台新增函数计算处理事件入口
查看>>
第一章——计算机系统架构介绍
查看>>
Struts2.5使用通配符的方式实现动态方法调用报错
查看>>
【MySQL】replace into 浅析之一
查看>>
HDOJ(HDU) 2519 新生晚会(组合公式)
查看>>
如果你将业务与技术能进行非常好的结合,那么你就是专家了(转)
查看>>
CentOS 7安装配置Apache HTTP Server
查看>>
编码之道:取个好名字很重要(转)
查看>>
金融安全资讯精选 2017年第十四期:十大顶级终端安全提供商报告,Uber承认数据泄露,微软“11月周二补丁日”发布53个漏洞补丁...
查看>>
Building a RESTful Web Service(转)
查看>>
Docker 容器抓包说明
查看>>
【X-Pack解读】阿里云Elasticsearch X-Pack Graph组件功能详解
查看>>
20171110_allow_read_only_corruption参数
查看>>
聊聊HTTPS和SSL/TLS协议
查看>>
Thinkphp学习04
查看>>
Html A标签中 href 和 onclick用法、区别、优先级别
查看>>
Visual Studio 有哪些好用的插件?
查看>>
linux编程获取本机网络相关参数
查看>>
选eMTC还是NB-IoT,不应该再是一个问题
查看>>
精通CSS+DIV网页样式与布局--滤镜的使用
查看>>