一起来做几道有趣的概率题

news2024/11/25 12:47:33

看到一篇叫做《和上帝一起掷骰子》的文章,里面提到了很多概率有关的问题,不少经过计算得出的概率都与人第一看上去产生的直觉大相径庭。所以,人类的直觉往往是靠不住的。

举两个例子:

若1千人中有1人携带hiv病毒,有一种可以百分之百检测出病毒携带者的检查。但这种检查对于没有携带的人,有5%的可能性误检出是携带者。现在随便找了一个人,检查后呈阳性,也是就携带者。那么他真的是携带者的可能性是多大?

这里,我们不考虑各种其他条件。看上去5%误检率是很低的。但其实,这人真正携带hiv的概率只有1.96%。

1 / (999 × 5% + 1)

另一个例子:

一辆出租车在雨夜肇事,一个目击证人说,车是蓝色的。已知:目击证人在当时场景下正确记忆并区分蓝绿色的准确率是80%,而该地85%的出租车是绿色,15%是蓝色。那么那辆车是蓝色的概率有多大?

按理说,眼见为实,八成不会错。但那车是蓝色的概率仅有41.38%。

(15% × 80%) / (85% × 20% + 15% × 80%)

最后,也是我觉得最有意思的,是这样一个问题:

有个人,生了俩孩子,已知其中一个是男孩,这个男孩的生日是星期二,问另一个小孩是男孩的概率。

直觉上似乎觉得,你生几个小孩,每个小孩是男孩的概率不都是1/2吗?这跟你是不是星期二生的有啥关系啊!但答案是13/27。

你看了可能不信。那么为了验证,我写了一段程序来模拟这个场景:

one_tuesday_boy = 0
one_tuesday_boy_plus_another_boy = 0
for gender1 in ['m', 'f']:
  for birth1 in range(1, 8):
      for gender2 in ['m', 'f']:
          for birth2 in range(1, 8):
              if (gender1 == 'm' and birth1 == 2) or (gender2 == 'm' and birth2 == 2):
                  one_tuesday_boy += 1
                  if gender1 == 'm' and gender2 == 'm':
                      one_tuesday_boy_plus_another_boy += 1
print one_tuesday_boy_plus_another_boy, '/', one_tuesday_boy

因为假设生男生女还一周七天出生的概率都是一样的,那么一共就有2×7×2×7=196种相等概率的可能性。通过程序枚举得到,其中有一个周二出生的男孩的情况是27种,这27种中又是两个男孩的情况是13种。很暴力地得到了答案。

作者:Crossin的编程教室


Crossin的新书《码上行动:用ChatGPT学会Python编程》已经上市了。本书以ChatGPT为辅助,系统全面地讲解了如何掌握Python编程,适合Python零基础入门的读者学习。【点此查看详细介绍】

购买后可加入读者交流群,Crossin为你开启陪读模式,解答你在阅读本书时的一切疑问。


添加微信 crossin123 ,加入编程教室共同学习~

eb90b5ab20d20acaeb42d3e10b9dc509.jpeg

感谢转发点赞的各位~

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1962695.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

电脑卡了怎么办?

在日常使用电脑的过程中,我们可能会遇到各种各样的问题,其中电脑卡顿是很让人心烦的问题之一。电脑卡顿不仅会影响我们的工作效率,还会让人感到非常烦恼。本文将详细介绍电脑卡顿的常见原因及其解决方法,帮助大家轻松应对这一问题…

深入浅出消息队列----【延迟消息的实现原理】

深入浅出消息队列----【延迟消息的实现原理】 粗说 RocketMQ 的设计细说 RocketMQ 的设计这样实现是否有什么问题? 本文仅是文章笔记,整理了原文章中重要的知识点、记录了个人的看法 文章来源:编程导航-鱼皮【yes哥深入浅出消息队列专栏】 粗…

四步教你快速解决UE5文件迁移失败❗️

本期作者:尼克 易知微3D引擎技术负责人 不知道大家在用UE5迁移文件时,有没有发现这个问题:如果文件输出的路径选择了非项目路径,那么UE会提示无法迁移。在UE4中,这样做是不存在问题的,只要选择「忽略」就可…

OS—文件系统

目录 一. 文件系统结构I/O 控制层基本文件系统文件组织模块逻辑文件系统 二. 文件系统布局文件系统在磁盘中的结构主引导记录(MasterBoot Record,MBR)引导块(boot block)超级块(super block)文件系统中空闲块的信息 文件系统在内存中的结构 三. 外存空间管理空闲表法空闲链表法…

关于CDN

CDN 代表内容分发网络(Content Delivery Network)它是一种通过将内容复制到多个地理位置分散的服务器上,从而加速网络内容传输的技术。CDN 的主要目的是提高用户访问速度、减少延迟和提升网站的可靠性。 具体来说,CDN 通过以下方…

飞创直线模组桁架机械手优势及应用领域

随着工业自动化和智能制造的发展,直线模组桁架机械手极大地减轻了人类的体力劳动负担,在危险性、重复性高的作业环境中展现出了非凡的替代能力,引领着工业生产向自动化、智能化方向迈进。 一、飞创直线模组桁架机械手优势 飞创直线模组桁架…

爬虫问题---ChromeDriver的安装和使用

一、安装 1.查看chrome的版本 在浏览器里面输入 chrome://version/ 回车查看浏览器版本 Chrome的版本要和ChromeDriver的版本对应,否则会出现版本问题。 2.ChromeDriver的版本选择 114之前的版本:https://chromedriver.storage.googleapis.com/index.ht…

mmdetection:用于目标检测、实例分割、全景分割和半监督目标检测的工具包

MMDetection 是一个基于 PyTorch 的开源目标检测工具箱,是 OpenMMLab 项目的一部分。该工具箱采用模块化设计,使用户能够通过组合不同组件轻松构建自定义的目标检测框架。 MMDetection 支持多种检测任务,包括目标检测、实例分割、全景分割和…

【ROS 最简单教程 002/300】ROS 集成开发环境安装: Noetic

💗 有遇到安装问题可以留言呀 ~ 当时踩了挺多坑,能帮忙解决的我会尽力 ! 1. 安装操作系统环境 Linux ❄️ VM / VirtualBox Ubuntu20.04 如果已有 linux 环境 (如双系统等),可跳过步骤 1 ~ 👉 保姆级图文安装教程指路…

Python_Flask学习笔记

1.配置 查询字符串的形式传参 app.route(/book/list) def book_list():page request.args.get(page,default1,typeint)return f"您获取的是{page}的图书列表!"if __name__ __main__:app.run()3.HTML模版渲染 from flask import Flask,render_templa…

大厂的堡垒机到底是啥?为什么需要它?

什么是堡垒机 堡垒机,即在一个特定的网络环境下,为了保障网络和数据不受来自外部和内部用户的入侵和破坏,而运用各种技术手段监控和记录运维人员对网络内的服务器、网络设备、安全设备、数据库等设备的操作行为,以便集中报警、及…

使用 Elastic Observability 中的 OpenTelemetry 进行基础设施监控

作者:来自 Elastic ISHLEEN KAUR 将 OpenTelemetry 与 Elastic Observability 相结合,形成应用程序和基础设施监控解决方案。 在 Elastic,我们最近决定全面采用 OpenTelemetry 作为首要的数据收集框架。作为一名可观察性工程师,我…

YOLOv9最新最全代码复现(论文复现)

YOLOv9最新最全代码复现(论文复现) 本文所涉及所有资源均在传知代码平台可获取 文章目录 YOLOv9最新最全代码复现(论文复现)引言YOLOv9模型概述模型框架图环境搭建及训练推理环境配置数据集准备训练过程测试和评估实践应用 报错修…

【CVPR2024】Efficient LoFTR: 高效的 LoFTR:具有类似稀疏的速度的半密集局部特征匹配

Efficient LoFTR: 高效的 LoFTR:具有类似稀疏的速度的半密集局部特征匹配 Efficient LoFTR realtime_demo 0.摘要 \qquad 我们提出了一种新的方法来有效地产生跨图像的半密集匹配。以往的无探测器匹配器LoFTR在处理大视点变化和纹理差的场景下表现出了出色的匹配能力…

【零基础必看的前端教程】——JavaScript(八)函数

欢迎大家打开前端的新篇章——JavaScript,JavaScript与HTML、CSS合称为前端三大件,JavaScript是前端的重中之重,小洪将继续以零基础视角,带你循序渐进学习前端知识,一看就懂,小白也能转行做前端&#xff01…

创建个人公私钥对

Windows电脑 本地电脑打开命令输入框,如windows WINR–cmd打开cmd窗口输入ssh-keygen -t rsa -C “Remote dev” ,按三次回车,即可看到本地生成的公私钥进入用户目录,如windows为C:\Users\xxx(个人域账号).ssh,可看到…

在C++程序中新建并使用库

创建一个新的cpp文件后,定义一个函数 我们希望这个函数是可以被多个程序调用的,而不是直接输入在程序中进行编译。在C程序中,不是所有代码都会被编译成可执行文件,只有main函数所在的程序才可以生成可执行文件。而这个库是通过上一…

(第三期)书生大模型实战营——书生大模型全链路开源开放体系

任务及教程来自书生大模型实战营https://github.com/InternLM/Tutorial

负载均衡、软件平滑升级

安装nginx 1.26.1 平滑升级、负载均衡 安装依赖 gcc gcc-c pcre-devel openssl-devel 七层负载均衡配置: [rootf ~]# vim /usr/local/nginx/conf/nginx.conf 43 location / {44 # root html;45 # index index.html index…

在docker中安装MongoDB 5.0+

文章目录 1、查看物理机是否支持avx指令集:安装资料中的cpu-z_2.10-cn.exe,并打开2、查看虚拟机是否支持avx指令集:3、创建目录4、使用Docker来运行一个MongoDB数据库实例5、进入容器6、查看当前db版本7、查看当前db的链接机器地址8、帮助指令…