HDU 4349-Xiao Ming's Hope(Lucas定理的推广)
2015-08-31 10:36
531 查看
题目地址:HDU 4349
题意:求C(n,0),C(n,1),C(n,2)…C(n,n).当中有多少个奇数(1<=n<=10^8)
思路:
在这里首先给出一个判断组合数奇偶性的一个规律:如果(n&m)==m,那么C(n,m)为奇数,否则为偶数
咱这里涉及的数值太大,所以并不能用。
其实本题是Lucas定理推导题,我们分析一下 C(n,m)%2,那么由lucas定理,我们可以写成二进制的形式观察,比如 n=1001101,m是从000000到1001101的枚举,我们知道在该定理中C(0,1)=0,因此如果n=1001101的0对应位置的m二进制位为1那么C(n,m) % 2==0,因此m对应n为0的位置只能填0,而1的位置填0,填1都是1(C(1,0)=C(1,1)=1),不影响结果为奇数,并且保证不会出n的范围,因此所有的情况即是n中1位置对应m位置0,1的枚举,那么结果很明显就是:2^(n中1的个数)。
题意:求C(n,0),C(n,1),C(n,2)…C(n,n).当中有多少个奇数(1<=n<=10^8)
思路:
在这里首先给出一个判断组合数奇偶性的一个规律:如果(n&m)==m,那么C(n,m)为奇数,否则为偶数
咱这里涉及的数值太大,所以并不能用。
其实本题是Lucas定理推导题,我们分析一下 C(n,m)%2,那么由lucas定理,我们可以写成二进制的形式观察,比如 n=1001101,m是从000000到1001101的枚举,我们知道在该定理中C(0,1)=0,因此如果n=1001101的0对应位置的m二进制位为1那么C(n,m) % 2==0,因此m对应n为0的位置只能填0,而1的位置填0,填1都是1(C(1,0)=C(1,1)=1),不影响结果为奇数,并且保证不会出n的范围,因此所有的情况即是n中1位置对应m位置0,1的枚举,那么结果很明显就是:2^(n中1的个数)。
#include <stdio.h> #include <math.h> #include <string.h> #include <stdlib.h> #include <iostream> #include <sstream> #include <algorithm> #include <set> #include <queue> #include <stack> #include <map> #include <bitset> #pragma comment(linker, "/STACK:102400000,102400000") using namespace std; typedef long long LL; const int inf=0x3f3f3f3f; const double pi= acos(-1.0); const double esp=1e-6; using namespace std; const int Maxn=1e6+10; int main() { int n; int cnt; while(~scanf("%d",&n)){ cnt=0; while(n>0){ if(n&1) cnt++; n>>=1; } printf("%d\n",1<<cnt); } return 0; }
相关文章推荐
- linux安装配置Apache2.4
- Linux下修复“fatal error: jsoncpp/json/json.h: No such file or directory”
- linux内核之遍历线性区
- Tessnet2 a .NET 2.0 Open Source OCR assembly using Tesseract engine
- Duplicate files copied in APK META-INF/LICENSE.txt
- Kail Linux渗透测试教程之ARP侦查Netdiscover端口扫描Zenmap与黑暗搜索引擎Shodan
- weblogic建域 for linux console
- Linux系统命令及Shell脚本学习笔记五:字符处理
- weblogic -for-linux-console
- rsa 网站openssl加密解密 使用心得
- 【Glassfish入门】使用jvm-options
- Tomcat虚拟目录配置
- 8月25日全球域名商(国际域名)解析新增保有量TOP20
- TechExcel助力福田汽车,为IT运维服务保驾护航
- linux内核之遍历文件描述符
- 架构之路(一):目标
- Greenplum Hadoop入门到实战演练教程
- CentOS 6.5安装部署Glusterfs
- eclipse tomcat maven热部署
- 英业达集团再次携手TechExcel,IT运维水平再添新助力