Допустим есть List элементoв
struct Item{
public float probability;
public int value;
}
List<Item> items;
В нем есть например 5 элементов, с вероятностями: 0.43, 0.01, 0.22, 0.15, 0.19. Сумма вероятностей всегда 1. Нужно случайно выбрать один элемент из списка, учитывая вероятность его выбора