文章目录

  • 一、排列组合示例 1 ( 组合 | 乘法法则 | 加法法则 )
  • 二、排列组合示例 2

参考博客 :

  • 【组合数学】基本计数原则 ( 加法原则 | 乘法原则 )
  • 【组合数学】集合的排列组合问题示例 ( 排列 | 组合 | 圆排列 | 二项式定理 )
  • 【组合数学】排列组合 ( 排列组合内容概要 | 选取问题 | 集合排列 | 集合组合 )

一、排列组合示例 1 ( 组合 | 乘法法则 | 加法法则 )


基本计数公式就是 加法法则 , 乘法法则 ;

从 111 ~ 300300300 中任意取出 333 个数 , 使得这三个数的和能被 333 整除 , 有多少种选取方法 ?

使用 分类 ( 乘法法则 ) , 分布 ( 加法法则 ) , 排列组合 的方法进行解决 ;

将上述 111 ~ 300300300 数字 , 按照除以 333 的余数分为以下三类 :

  • ① 除以 333 余数为 111 : A={1,4,⋯,298}A = \{ 1, 4, \cdots , 298 \}A={1,4,⋯,298}
  • ② 除以 333 余数为 222 : B={2,5,⋯,299}B = \{ 2, 5, \cdots , 299 \}B={2,5,⋯,299}
  • ③ 除以 333 余数为 000 : C={3,6,⋯,300}C = \{ 3, 6, \cdots , 300\}C={3,6,⋯,300}

组合问题 :

  • 在 AAA 集合中任选 333 个数 , 三个数之和肯定是 333 的倍数 , 可以倍 333 整除 ; 选取方法有 C(100,3)C(100, 3)C(100,3) 种 ;

  • 在 BBB 集合中任选 333 个数 , 三个数之和肯定是 333 的倍数 , 可以倍 333 整除 ; 选取方法有 C(100,3)C(100, 3)C(100,3) 种 ;

  • 在 CCC 集合中任选 333 个数 , 三个数之和肯定是 333 的倍数 , 可以倍 333 整除 ; 选取方法有 C(100,3)C(100, 3)C(100,3) 种 ;

乘法法则 : 在 A,B,CA,B,CA,B,C 中每个集合各取一个数 , 三个数之和也是 333 的倍数 ,

  • 第一个集合取 111 个数 , 有 100100100 种取法
  • 第二个集合取 111 个数 , 有 100100100 种取法
  • 第三个集合取 111 个数 , 有 100100100 种取法

总共有 1003100^31003 种取法 ;

最终的取法 , 使用加法法则 :

3C(100,3)+1003=14851003C(100, 3) + 100^3 = 14851003C(100,3)+1003=1485100

二、排列组合示例 2


1000!1000!1000! 末尾 000 的个数 ?

这个数值使用乘法计算 , 非常大 , 基本无法计算 ;

列出因式 : 将 1000!1000!1000! 看做

1000×999×998×⋯×2×11000 \times 999 \times 998 \times \cdots \times 2 \times 11000×999×998×⋯×2×1

因式 ;

原理说明 : 上述因式中有 100010001000 个因子 , 将这 100010001000 个因子分解 , 如果分解式中有 iii 个 555 , jjj 个 222 , 则 iii 和 jjj 中较小的值 min⁡{i,j}\min\{ i,j \}min{i,j} 就是 000 的个数 ;

上述 111 ~ 100010001000 这 100010001000 个数字中统计分解出的 222 和 555 的个数

统计 222 的因子个数 : 肯定大于 500 ;

  • ① 是 222 的倍数的数字有 500500500 个
  • ② 是 444 的倍数的数字有 250250250 个 , 分解出 2×22\times22×2 , 其中一个 222 在之前已经统计过 , 这里在加上 250250250 个 222 , 当前有 750750750 个 222 ;
  • ③ 是 161616 的倍数的数字有 626262 个 , 分解出 2×2×22\times2 \times 22×2×2 , 其中两个 222 在之前已经统计过 , 这里在加上 626262 个 222 , 当前有 812812812 个 222 ;
  • ④ 是 323232 的倍数的数字有 313131 个 , 分解出 2×2×2×22\times2 \times 2\times 22×2×2×2 , 其中三个 222 在之前已经统计过 , 这里在加上 313131 个 222 , 当前有 833833833 个 222 ;
    ⋮\vdots⋮

统计 555 的因子个数 : 249249249 个 ;

  • ① 是 555 的倍数的数字有 200200200 个 , 统计有 111 个因子 555 的情况 , 其中肯定有的因子可以分解出 25,125,62525, 125, 62525,125,625 等情况 , 下面逐渐细化剥离出没有统计的因子 ;
  • ② 是 252525 的倍数的数字有 404040 个 , 分解出 5×55\times55×5 , 其中一个 555 在之前已经统计过 , 这里在加上 404040 个 555 , 当前有 240240240 个 555 ;
  • ③ 是 125125125 的倍数的数字有 888 个 , 分解出 5×5×55\times5 \times 55×5×5 , 其中两个 555 在之前已经统计过 , 这里在加上 888 个 555 , 当前有 248248248 个 555 ;
  • ④ 是 625625625 的倍数的数字有 111 个 , 分解出 5×5×5×55\times5 \times 5 \times 55×5×5×5 , 其中三个 555 在之前已经统计过 , 这里在加上 111 个 555 , 当前有 249249249 个 555 ;

分解出的 222 的个数 iii 肯定是大于 500500500 的数 ;

分解出的 555 的个数 jjj 值为 249249249 个 ;

因此1000!1000!1000! 末尾 000 的个数 是 249249249 个 ;

【组合数学】排列组合 ( 排列组合示例 )相关推荐

  1. 【组合数学】排列组合 ( 集合排列、分步处理示例 )

    文章目录 一.集合排列.分步处理示例 排列组合参考博客 : [组合数学]基本计数原则 ( 加法原则 | 乘法原则 ) [组合数学]集合的排列组合问题示例 ( 排列 | 组合 | 圆排列 | 二项式定理 ...

  2. 【组合数学】排列组合 ( 多重集组合数示例 | 三个计数模型 | 选取问题 | 多重集组合问题 | 不定方程非负整数解问题 )

    文章目录 一.多重集组合示例 二.三个计数模型 排列组合参考博客 : [组合数学]基本计数原则 ( 加法原则 | 乘法原则 ) [组合数学]集合的排列组合问题示例 ( 排列 | 组合 | 圆排列 | ...

  3. 【组合数学】排列组合 ( 集合组合、一一对应模型分析示例 )

    文章目录 一.集合组合.一一对应模型分析示例 排列组合参考博客 : [组合数学]基本计数原则 ( 加法原则 | 乘法原则 ) [组合数学]集合的排列组合问题示例 ( 排列 | 组合 | 圆排列 | 二 ...

  4. python计算组合数_Python实现的排列组合计算操作示例

    Python实现的排列组合计算操作示例 本文实例讲述了Python实现的排列组合计算操作.分享给大家供大家参考,具体如下: 1. 调用 scipy 计算排列组合的具体数值 >> from ...

  5. 排列公式和组合公式_排列与组合:排列公式与组合公式之间有什么区别?

    排列公式和组合公式 Here's the short version. 这是简短的版本. Let's take ringing bells in a church as an example. 让我们 ...

  6. 排列组合思维导图_排列组合——排列数专题

    在上篇关于排列组合主要考点的介绍中,正男老师提到:排列组合考点通常可以拆分为排列数考点和组合数考点.排列数考点相关试题可以细分为2类,分别为:穷举问题和限制条件问题.本期正男老师就从近六年内的5道涉及 ...

  7. 递归学习_组合_全组合排列

    Sample Input 3 1 2 3 Sample Output 123 132 213 231 312 321 #include <iostream> using namespace ...

  8. python以环状形式组合排列图片并输出的方法

    python以环状形式组合排列图片并输出的方法 本文实例讲述了python以环状形式组合排列图片并输出的方法.分享给大家供大家参考.具体分析如下: 这段代码可以自定义一个空白画板,然后将指定的图片以圆 ...

  9. 组合系列--有排列就有组合

    文章目录 77. 组合 39. 组合总和 40. 组合总和 II 216. 组合总和 III 377. 组合总和 Ⅳ 组合的题目的重点就是顺序问题,他不像排列,不同顺序代表一个排列,所以组合的遍历.当 ...

最新文章

  1. 开发日记-20190905 关键词 Linux (Ubuntu) 下的Android模拟器:Genymotion
  2. python字典统计_python字典计数
  3. Redis基本操作——队列 List(原理篇)
  4. AR+LBS街景实景红包PokemonGo游戏捉妖夺宝营销解决方案定制开发暨百度高德地图Unity插件SDK
  5. SEO内容为王之如何创造伪原创
  6. node 多进程 vs java_多进程 VS 多线程 VS 线程池 VS EventLoop
  7. 小米个性主题显示服务器不可用,MIUI个性主题上线透明壁纸功能,并修复状态栏无法混搭问题!...
  8. Centos7下载安装教程【图文详解】
  9. uniapp app中导出手机号码到通讯录
  10. 在已有win7系统的基础上重装win10系统
  11. java 异常提示_Java显示异常信息与异常分类
  12. 一篇3分文章的水稻转录组分析实战
  13. 利用beef盗取浏览器cookie,并实现页面跳转
  14. “21 天好习惯”第一期-6
  15. 布莱克斯科尔斯模型(四)方程推导过程
  16. 解决UnicodeDecodeError: ‘utf-8‘ codec can‘t decode byte 0xca in position 0: invalid continuation byte
  17. VC6.0补丁Vs6sp6安装方法
  18. 1165 杨辉三角形
  19. 简单典型二阶系统_自动控制原理要点---第二章 系统建模
  20. 关于BufferedReader的read()及readLine()

热门文章

  1. Java EE WEB工程师培训-JDBC+Servlet+JSP整合开发之06.JDBC PreparedStatement
  2. 波形捕捉:(7)“捕捉缓冲区”特效
  3. collection 源码
  4. 猎豹MFC--TH_双管道--对管道的操作就想对文件的操作一样
  5. expdp\impdp及exp\imp
  6. 连接数据库时常用的工具类(一)-------C3P0XmlUtils
  7. 我遇到的优秀年轻人都有哪些特质
  8. 提高Service提高进程优先级别,不被系统容易杀死
  9. The Geometry has no Z values 解决办法(转载)
  10. Inline Hook