开始使用免费开始使用

单个 n 的模拟

在一个有 50 人的房间里,我们先用模拟来寻找解法。

在这段代码中,n 表示房间人数,match 是计数器,用于统计在模拟中是否出现至少一对相同生日的次数。它从 0 开始,在每次出现匹配时应加 1。

本练习是课程的一部分

R 中的概率谜题

查看课程

练习说明

  • 补全 sample 函数所需的参数,为每个人随机分配生日。
  • 按照给定条件更新变量 match(出现匹配时将其递增)。
  • 计算出现至少一次匹配的估计概率。

交互式实操练习

通过完成这段示例代码来试试这个练习。

set.seed(1)
n <- 50
match <- 0

# Simulate 10000 rooms and check for matches in each room
for(i in 1:10000){
  birthdays <- sample(___, ___, replace = ___)
  if(length(unique(birthdays)) < n){
    match <- ___
  } 
}

# Calculate the estimated probability of a match and print it
p_match <- ___
print(___)
编辑并运行代码