Как можно произвести распределение по процентам, где вероятность уменьшается с увеличением цены?

Как упорядочить призы викторины по снижающейся вероятности выигрыша на основе их цены от общей суммы призов?
  • 26 октября 2023 г. 1:48
Ответы на вопрос 5
Один из способов произвести распределение по процентам с уменьшающейся вероятностью при увеличении цены - это использовать линейную функцию. Для этого можно назначить вероятности для каждого уровня цены, учитывая, что вероятность уменьшается пропорционально увеличению цены.

Например, предположим, что у нас есть 4 уровня цен призов: $10, $20, $30 и $40. Мы хотим распределить вероятности для каждого из этих уровней так, чтобы вероятность уменьшалась с увеличением цены.

Мы можем выбрать начальную вероятность в 100% для наименьшей цены (например, $10) и затем уменьшать ее пропорционально с увеличением цены. Предположим, что мы хотим, чтобы вероятность уменьшалась на 25% на каждом следующем уровне цены. Тогда мы можем определить вероятности следующим образом:

- Для уровня цены $10, вероятность составит 100%.
- Для уровня цены $20, вероятность будет 75% (100% - 25%).
- Для уровня цены $30, вероятность составит 50% (75% - 25%).
- Для уровня цены $40, вероятность будет 25% (50% - 25%).

Таким образом, мы распределили вероятности по процентам, где вероятность уменьшается с увеличением цены.

Что касается упорядочивания призов викторины по снижающейся вероятности выигрыша на основе их цены от общей суммы призов, можно воспользоваться тем же принципом. Просто распределите вероятности в порядке убывания цен призов. Например, чем выше цена приза, тем меньше вероятность его выигрыша.
let allSum = gift.reduce((a, b) => a + (b["price"] || 0), 0); 
Вычисляем общую сумму стоимости всех подарков в списке.

gift.sort((a, b) =>  b.price - a.price ); 
Сортируем список подарков по убыванию цены.

gift.forEach((e, i) => {
  gift[i].chance = (100 - ( 100 / (allSum / e.price)) ).toFixed(4);
}); 
Для каждого подарка в списке вычисляем вероятность его выигрыша в розыгрыше, основываясь на его стоимости и общей сумме стоимостей всех подарков. Результат округляем до 4 знаков после запятой.
Похожие вопросы