![]() |
|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#1
|
|||
|
|||
![]() Как построить функцию, которая будет кодировать числовой набор в одно число, т.е. для 2-х чисел это выглядит например так
x1, x2, условие x1+x2 = S. соответственно задав количество комбинаций (N = 5) и S = 1 можно закодировать все возможные (равномерно распределенные) сочетания: k = 0 тогда х1 = 0, х2 =1; k = 1 тогда х1 = 1/4, х2 =3/4; k = 2 тогда х1 = 1/2, х2 =1/2; k = 3 тогда х1 = 3/4, х2 =1/4; k = 4 тогда х1 = 1, х2 = 0; Формула понятна: х1 = k*S/(N-1); x2 = S - x1; А как в общем виде закодить такую батву для 3-х иксов и вообще произвольного количества? |