投1万注,中2.2亿彩票?我用代码算下

前言

hi,大家好,我是大鱼七成饱。最近看到一则新闻,江西南昌某彩民投注快乐8"选七中七",全中一等奖,单注奖金4475元,总奖金达2亿多元。作为资深冤大头(老买不中,牛性不改继续买),看到这么大奖金真让两眼冒光,心跳加快,为什么我不是某彩民。喝口水冷静思考下,快乐8中奖概率真的那么高吗,无背景小民去买多少才能中呢?

要计算概率,首先看下中奖规则。

登录中国福彩网,查看7中7关键规则如下:

一句话总结就是,选7中7规则是,1到80取20个号码,如果命中了20个中的7个,则是一等奖。

然后是概率计算

针对选7玩法,本来想去网上找资料直接借用下。结果搜出了一堆观点,有说4万分之一的,还有5万分之一的,还有更离谱的说620万分之一。总之,没有人去验证下对错,果然大部分读者数学都还给老师了(笔者也是)。其实验证不难,这种彩票有专门的数学公式可以计算(这一步容易忽悠),最后用代码随机跑十几万次验证下就可以。

数学公式直接算

根据规则理,开奖时会从80个数中开出20个数,如果选择的7个数均在开出的20个数中,那么就中了一等大奖,也可以理解为选7中7。80个数选7个,有多少组合呢,用排列组合公式算下是 31 7671 6400,大约31亿种。20选7个的组合数是 77520,大约7万种。两者相除就是中奖概率。如下图用代码算下概率。

  • 排列组合公式
  • 公式计算

计算结果是,0.0000244026,大约五万分之一。那这么算对不对呢,还有6百万分之一的呢?

随机函数模拟抽奖

这步用随机函数模拟抽奖过程验证下。抽奖步骤如下:

  • 1)每次开奖时从1至80的号码中随机摇出20个号码,这20个号码组成当期开奖号码。
  • 2)玩家选择的7个球,范围1-80,不重复
  • 3)匹配是否中奖
  • 4)计算次数
  • 5)运行50万次

一等奖概率是0.00002。

结论,选7中7一等奖的概率接近五万分之一。买5万注,大概率能中一等奖,投10万块,中4千多。

最后一点思考

本文仅从数学角度窥探了下彩票。至于新闻中说的一个号买1万注,还有连号,这个就不清楚了。平时买彩票,仅供娱乐,这种规则下大部分人一定是赔的。小买怡情,大买啥都么有。

相关推荐
独断万古他化7 分钟前
【Java 实战项目】多用户网页版聊天室:消息传输模块 —— 基于 WebSocket 实现实时通信
java·spring boot·后端·websocket·ajax·mybatis
舒一笑11 分钟前
🚀 我用一行命令,把 OSS 私有文件变成“可直接下载的公网链接”(很多人不会)
后端
yyt36304584114 分钟前
spring单例bean线程安全问题讨论
java·spring
小兔崽子去哪了24 分钟前
Docker 安装 PostgreSQL
数据库·后端·postgresql
野犬寒鸦28 分钟前
Redis热点key问题解析与实战解决方案(附大厂实际方案讲解)
服务器·数据库·redis·后端·缓存·bootstrap
我是大猴子34 分钟前
事务失效的几种情况以及是为什么(详解)
java·开发语言
snakeshe10101 小时前
深入理解 Java 注解:从原理到实战
后端
Lucaju1 小时前
吃透 Spring AI Alibaba 多智能体|四大协同模式+完整代码
后端
Nyarlathotep01131 小时前
Redis的对象(5):有序集合对象
redis·后端
wertyuytrewm1 小时前
Java面试——Java基础
java·jvm·面试