Прохождение API-шлюза для видеофайлов s3

здесь вход и отношения: 0 (80%), 1 (10%), 2 (10%)

позволяют вывести их, чтобы их было легко визуализировать.

                0                       1        2
-------------------------------------________+++++++++

позволяет суммировать общий вес и называть его TR для общего соотношения. поэтому в этом случае 100. позволяет случайным образом получить число из (0-TR) или (от 0 до 100 в этом случае). 100 - это ваш вес. Назовите это RN для случайного числа.

, так что теперь мы имеем TR как общий вес и RN как случайное число между 0 и TR.

, поэтому представьте себе, что мы выбрали случайный # из 0 до 100. Скажите 21. так что на самом деле 21%.

МЫ ДОЛЖНЫ ПРЕОБРАЗОВАТЬ / СЧИТАТЬ ЭТО К НАШИМ ВХОДНЫМ ЧИСЛАМ, НО КАК?

позволяет перебирать каждый вес (80, 10, 10) и сохраните сумму весов, которые мы уже посетили. момент, в течение которого мы перебираем веса, больше случайного числа RN (в этом случае 21), мы останавливаем цикл & amp; верните это положение элемента.

double sum = 0;
int position = -1;
for(double weight : weight){
position ++;
sum = sum + weight;
if(sum > 21) //(80 > 21) so break on first pass
break;
}
//position will be 0 so we return array[0]--> 0

позволяет сказать, что случайное число (от 0 до 100) равно 83. Давайте сделаем это снова:

double sum = 0;
int position = -1;
for(double weight : weight){
position ++;
sum = sum + weight;
if(sum > 83) //(90 > 83) so break
break;
}

//we did two passes in the loop so position is 1 so we return array[1]---> 1
0
задан Sachin Arora 16 January 2019 в 07:31
поделиться