Python: Теория вероятности
Игральная кость – шестигранный кубик, который бросается несколько раз.
src/solution.py
Реализуйте функцию calculate_probabilities()
, которая принимает на вход историю подбрасывания кубика в виде списка и возвращает словарь. Ключом этого словаря служит число из списка, а значением – ещё один словарь, в котором ключи – это числа, выпавшие сразу после первоначального числа, а значения – вероятность их выпадения.
Например, если передать на вход список [1, 3, 1, 5, 1]
, итоговый словарь будет выглядеть так:
{
1: {3: 0.5, 5: 0.5},
3: {1: 1},
5: {1: 1},
}
После числа 1 выпадали числа 3 и 5 с равной долей вероятности 0.5. А после чисел 3 и 5 всегда выпадала единица, что даёт вероятность в 1.
calculate_probabilities([]) # {}
calculate_probabilities([1, 3, 1, 5, 1, 2, 1, 6])
# {
# 1: {
# 2: 0.25,
# 3: 0.25,
# 5: 0.25,
# 6: 0.25,
# },
# 2: {1: 1},
# 3: {1: 1},
# 5: {1: 1},
# 6: {},
# }
Для полного доступа к испытанию нужен базовый план
Базовый план откроет полный доступ ко всем курсам, упражнениям и урокам Хекслета, проектам и пожизненный доступ к теории пройденных уроков. Подписку можно отменить в любой момент.