You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

求0000至9999范围内随机抽取两个无共同数字的4位数的概率的解析推导方法

求0000至9999范围内随机抽取两个无共同数字的4位数的概率的解析推导方法

嘿,我来帮你拆解这个问题的解析推导过程,咱们一步步来,最后就能和你代码算出的结果对上啦:

第一步:先算总样本数

两个数都是从0000到9999里随机选,每个数有10^4种可能,所以总共有 10^4 * 10^4 = 10^8 种数对组合,这和你代码里的分母完全一致。

第二步:分类计算符合条件的数对数量

核心思路是按第一个数使用的不同数字的个数来分类讨论,因为第一个数的数字重复情况会直接影响第二个数的可选范围:

情况1:第一个数是4位相同的数字(比如0000、1111)

  • 这类数的总数:0-9每个数字对应一个,共10个。
  • 第二个数的要求:不能包含这个重复的数字,所以每一位都有9种选择(排除那个重复数字),可选数的数量是 9^4 = 6561。
  • 这部分的数对总数:10 * 6561 = 65610。

情况2:第一个数用了2个不同的数字

这里又细分成两种子情况:

  • 子情况2a:3个相同数字+1个不同数字(比如0001、1112)
    • 这类数的总数:先选重复的数字(10种),再选不同的数字(9种),再选不同数字的位置(4个位置里选1个),所以是 10 * 9 * 4 = 360 个。
    • 第二个数不能包含这两个数字,每一位有8种选择,可选数数量是 8^4 = 4096。
    • 这部分数对总数:360 * 4096 = 1474560。
  • 子情况2b:2个相同数字+另外2个相同数字(比如0011、2233)
    • 这类数的总数:先选两个不同的数字(组合数C(10,2)=45种),再分配位置(4个位置选2个放第一个数字,剩下的放第二个,C(4,2)=6种),所以是 45 * 6 = 270 个。
    • 同样,第二个数不能包含这两个数字,可选数数量是 8^4 = 4096。
    • 这部分数对总数:270 * 4096 = 1105920。

情况3:第一个数用了3个不同的数字(比如0012、1123,即一个数字重复2次,另外两个各1次)

  • 这类数的总数:先选重复的数字(10种),再选另外两个不同的数字(组合数C(9,2)=36种),然后计算排列数:4个位置里有一个数字重复2次,总排列数是 4!/2! = 12 种。所以总数是 10 * 36 * 12 = 4320 个。
  • 第二个数不能包含这3个数字,每一位有7种选择,可选数数量是 7^4 = 2401。
  • 这部分数对总数:4320 * 2401 = 10372320。

情况4:第一个数用了4个完全不同的数字(比如0123、1234)

  • 这类数的总数:第一位10种选择,第二位9种(不重复),第三位8种,第四位7种,即 10 * 9 * 8 * 7 = 5040 个。
  • 第二个数不能包含这4个数字,每一位有6种选择,可选数数量是 6^4 = 1296。
  • 这部分数对总数:5040 * 1296 = 6531840。

第三步:求和得到符合条件的总数

把所有情况的数对数量加起来:

65610 + 1474560 + 1105920 + 10372320 + 6531840 = 19550250

完全和你代码算出的结果一致!

最后计算概率

概率就是符合条件的数对总数除以总可能数:
19550250 / 10^8 = 0.1955025

备注:内容来源于stack exchange,提问作者TDG

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.21 10:09:30