当前位置: 首页 > 编程笔记 >

Python的生日悖论

吴建中
2023-03-14
本文向大家介绍Python的生日悖论,包括了Python的生日悖论的使用技巧和注意事项,需要的朋友参考一下

在概率部分,生日悖论是一个非常著名的问题。

问题陈述-生日聚会上有几个人,有些人发生相同的生日碰撞。我们需要在有相同生日的基础上找到一个生日聚会的大概人数。

很有可能,我们知道前进的机会是1/2,就好像我们有一些硬币一样,获得10个正面的机会是1/100或0.001。

让我们了解一下这个概念。

两个人生日不同的机会为$$\ frac {364} {365} $$,这是在非year年中的$$\ lgroup1- \ frac {1} {365} \ rgroup $$。

因此,我们可以说具有特定生日可能性的第一个人为“ 1”,而对于其他人而言,这将是不同的,即,

P(different) = $$1 \ times \ lgroup1- \ frac {1} {365} \ rgroup \ times \ lgroup1- \ frac {2} {365} \ rgroup \ times \ lgroup1- \ frac {3} {365} \ rgroup \ times \ lgroup1- \ frac {4} {365} \ rgroup ... $$

因此,

P(same) = 1- P(different)

例如,具有相同生日的人的概率为0.70。

N =√2×365×对数(1-1 / p)

N =√2×365×log(1-1 / 0.70)= 30

因此,总的近似值为。相同生日的人是30岁。

示例

import math
def findPeople(p):
   return math.ceil(math.sqrt(2*365*math.log(1/(1-p))))
print(findPeople(0.70))
输出结果

运行上面的代码将生成如下输出:

30

 类似资料:
  • 本文向大家介绍C ++中的生日悖论,包括了C ++中的生日悖论的使用技巧和注意事项,需要的朋友参考一下 在概率部分,生日悖论是一个非常著名的问题。该问题的问题陈述表示为: 生日聚会上有几个人,有些人发生相同的生日碰撞。我们需要找到大概的数字。参加相同生日的生日聚会上的人数。 很有可能我们知道获得领先的机会与拥有一些硬币的机会相同是1/2,获得10个正面的机会是1/100或0.001。 让我们了解一

  • Python3 实例 以下代码用于生成指定日期的日历: 实例(Python 3.0+)# Filename : test.py # author by : www.runoob.com # 引入日历模块 import calendar # 输入指定年月 yy = int(input("输入年份: ")) mm = int(input("输入月份: ")) # 显示日历 print(calendar

  • 您的生日日期   设定您的生日日期。

  • 本文向大家介绍python生成日历实例解析,包括了python生成日历实例解析的使用技巧和注意事项,需要的朋友参考一下 本文实例展示了Python生成日历的实现方法。该实例可实现一个月的日历生成5x7的列表,列表里的没个日期为datetime类型,采用python自带的 calendar 模块实现。 程序运行结果如下: python代码如下: 希望本文所述实例对大家的Python程序设计有所帮助。

  • 本文向大家介绍python根据出生日期获得年龄的方法,包括了python根据出生日期获得年龄的方法的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了python根据出生日期获得年龄的方法。分享给大家供大家参考。具体如下: 这段代码可以根据用户的出生日期获得其年龄,born参数为date类型 希望本文所述对大家的Python程序设计有所帮助。

  • 问题内容: 我正着手用Python构建一个应用程序,该应用程序将需要大量处理BC日期(在DB中存储和检索,进行计算)。大多数日期会有各种不确定性,例如“大约2000BC”。 我知道Python的datetime库只能处理1 AD的日期。 到目前为止,我只找到FlexiDate。还有其他选择吗? 编辑: 最好的方法可能是将它们存储为字符串(具有String作为基本数据类型),并且-建议- 具有自定义