题目大意:给两个数字a,b求出[a,b]中转化成二进制后0的个数大于等于1的个数的数

例如1100转化成10-11,100-111,1000-1011,1100。保证每个区段都有1打头,然后有一段数字任选用组合数求;

代码如下

#include<iostream>
#include<string.h>
#include<stdio.h>
using namespace std;
int a[40];
int c[50][50];
void table()
{int i,j;for(i=0;i<=32;i++){for(j=0;j<=i;j++){if(!j||i==j)c[i][j]=1;elsec[i][j]=c[i-1][j-1]+c[i-1][j];}}return;
}
int sum(int n){if(n == 0)return 0;int o = 0;          //转化成二进制的位数while(n){a[o++] = n%2;n/=2;}int sum = 0;        //ansint u = 0;          //二进制前面1的个数-0的个数for(int i = o-2; i >= 0; i--){if(a[i] == 1){if(i >= u){for(int k = 0; k <= i; k++){        //1的个数if(k + u <= i - k){//printf("%d %d %d\n", i, k, c[i][k]);sum += c[i][k];}}}u++;}else u--;}//printf("%d %d \n", u, o);u++;if(u <= 0){sum ++;}for(int i = 1; i < o-1; i++){for(int k = 0; k <= i; k++){if(1+k <= i-k){sum += c[i][k];}}}return sum;
}
int main(){int a, b;table();while(scanf("%d%d", &a, &b)!=EOF){printf("%d\n",sum(b) - sum(a-1));}
}

View Code

转载于:https://www.cnblogs.com/icodefive/p/4234608.html

poj3252 组合数学相关推荐

  1. 不畏浮云遮望眼--离散数学和组合数学

    不畏浮云遮望眼,基础很重要! 离散数学是算法和数据结构的基础,而算法和数据结构又是什么的基础?不解释了. 1.<离散数学及其应用> 作者: (美)Kenneth H. R 出版社: 机械工 ...

  2. szucodeforce训练1081C组合数学lucas定理,div2 627的D dfs +剪枝优化,697D Puzzles{dfs序+概率}

    给你n个方格排成一行,有m种颜色,然后要把这n个方格分成k+1段,每段涂不同的颜色,问有多少种方法. 组合数学Lucas定理 排列组合问题,首先要在n-1个位置里面选出k个位置当作段与段的分割点,然后 ...

  3. 【数学专题】组合数学与计数

    整理的算法模板合集: ACM模板 目录 AcWing 1307. 牡牛和牝牛(递推) AcWing 1308. 方程的解 AcWing 1309. 车的放置(组合数学,分类讨论) AcWing 131 ...

  4. 组合数学实验——二分图匹配算法

    2019独角兽企业重金招聘Python工程师标准>>> 大一时候写的代码,忽然翻了出来.... 算法:组合数学中文第4版 机械工业出版社 P234 ID就先隐藏掉了 // // // ...

  5. Sequence(组合数学,集合不同元素的个数)

    Sequence [组合数学] 时间限制: 3 Sec  内存限制: 128 MB 提交: 138  解决: 52 [提交][状态][讨论版] 题目描述 在某个夜黑月高的晚上,!!!,原谅我编不下去了 ...

  6. 【组合数学】指数生成函数 ( 指数生成函数求解多重集排列示例 2 )

    文章目录 一.指数生成函数求解多重集排列示例 2 参考博客 : 按照顺序看 [组合数学]生成函数 简要介绍 ( 生成函数定义 | 牛顿二项式系数 | 常用的生成函数 | 与常数相关 | 与二项式系数相 ...

  7. 【组合数学】指数生成函数 ( 指数生成函数求解多重集排列示例 )

    文章目录 一.指数生成函数求解多重集排列示例 参考博客 : 按照顺序看 [组合数学]生成函数 简要介绍 ( 生成函数定义 | 牛顿二项式系数 | 常用的生成函数 | 与常数相关 | 与二项式系数相关 ...

  8. 【组合数学】指数生成函数 ( 证明指数生成函数求解多重集排列 )

    文章目录 一.证明指数生成函数求解多重集排列 参考博客 : 按照顺序看 [组合数学]生成函数 简要介绍 ( 生成函数定义 | 牛顿二项式系数 | 常用的生成函数 | 与常数相关 | 与二项式系数相关 ...

  9. 【组合数学】指数生成函数 ( 指数生成函数性质 | 指数生成函数求解多重集排列 )

    文章目录 一.指数生成函数性质 二.指数生成函数求解多重集排列 参考博客 : 按照顺序看 [组合数学]生成函数 简要介绍 ( 生成函数定义 | 牛顿二项式系数 | 常用的生成函数 | 与常数相关 | ...

最新文章

  1. 记一次订单号重复的事故,快看看你的 uuid 在并发下还正确吗?
  2. 我的一些项目管理经验
  3. Java中如何使用session
  4. JMeter入门(03)多台JMeter联合测试
  5. 国内淘宝镜像 cnpm转npm
  6. 祝大家七夕快乐,邀你源码共读,顺带发点红包
  7. 就计算机结构与课程的论文,关于计算机组成原理的课程论文(2)
  8. Numpy np.random.RandomState()的简单用法
  9. 10g添加用户 oracle_linux安装oracle
  10. FPGA实现BP神经网络-原理
  11. phpcms v9模板制作教程(转载)
  12. 2020年蓝桥杯省赛 C++ B组
  13. Linux命令 常见命令 详细分类
  14. 一次哔哩哔哩面试经历
  15. html src=true,embed属性变true
  16. 华为注册“鸿蒙”商标为自研操作系统铺路,或已经用于华为设备中。
  17. java使用es查询
  18. CatBoost 模型中标称型特征转换成数字型特征
  19. MySQL 中的系统库之sys 系统库
  20. matlab 计算变异系数,变异系数法求权重matlab 代码

热门文章

  1. MarkDown常用技巧总结
  2. adaptiveThreshold函数
  3. 【干货】Dask快速搭建分布式集群(大数据0基础可以理解,并使用!)
  4. 3.1.2 单一数字评估指标以及多个不同评估指标
  5. 交替性注意力_如何从心理学角度解释“专注力”,“专注力”对一个人的影响?...
  6. 页面金额显示两位小数点问题
  7. 20135320赵瀚青LINUX第十八章读书笔记
  8. centos 下 django 1.8 配置好后 admin 后台无法显示 样式解决办法
  9. 纪念逝去的岁月——C/C++字符串反转
  10. Android下/data/data/package_name/files读写权限