Для сравнения с ответом @ TimBiegeleisen, вот альтернативный подход
Мы определяем функцию, которая имитирует прокатку 6-стороннего кристалла и возвращает минимальное количество бросков, необходимое, чтобы получить все стороны хотя бы один раз.
myfun <- function(Nmax = 10^5) {
smpl <- sample(1:6, Nmax, replace = T)
for (n in 1:Nmax) if (length(table(smpl[1:n])) == 6) break;
return(n)
}
Теперь мы повторим процесс 1000 раз
set.seed(2018)
x <- replicate(1000, myfun())
summary(x)
#Min. 1st Qu. Median Mean 3rd Qu. Max.
#6.00 10.00 13.00 14.45 17.00 51.00
Построим распределение
ggplot(data.frame(x = x), aes(x)) +
geom_density()
Обратите внимание, что значение находится в хорошем соответствии с теоретическим значением
6 * sum(1 / (1:6))
[1] 14.7
Таким образом, результат близок, с абсолютной процентной ошибкой
abs(mean(x) - 6 * sum(1 / (1:6))) / (6 * sum(1 / (1:6))) * 100
#[1] 1.727891