Php: Теория вероятности

PHP: Функции 2 сообщения
Обновлено: 21 апр., 16:43
48
Студентов
85%
Завершения

Игральная кость – шестигранный кубик, который бросается несколько раз.

src/Solution.php

Реализуйте функцию, которая принимает на вход историю подбрасывания кубика в виде массива и возвращает ассоциативный массив. Ключом этого массива служит число из списка, а значением – ещё один ассоциативный массив, в котором ключи – это числа, выпавшие после первоначального числа, а значения – вероятность их выпадения.

Например, если передать на вход массив [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.

calculateProbabilities([]); // []
calculateProbabilities([1, 3, 1, 5, 1, 2, 5, 6, 2, 5, 2, 6, 4, 4]);
/* 
[
    1 => [
        3 => 0.33,
        5 => 0.33,
        2 => 0.33
    ],
    3 => [1 => 1],
    5 => [
        1 => 0.33,
        6 => 0.33,
        2 => 0.33
    ],
    2 => [
        5 => 0.67,
        6 => 0.33
    ],
    6 => [
        2 => 0.5,
        4 => 0.5
    ],
    4 => [4 => 1]
];
*/

Для полного доступа к испытанию нужен базовый план

Базовый план откроет полный доступ ко всем курсам, упражнениям и урокам Хекслета, проектам и пожизненный доступ к теории пройденных уроков. Подписку можно отменить в любой момент.

Получить доступ
900
упражнений
2000+
часов теории
3200
тестов