Главная страница


ru.algorithms

 
 - RU.ALGORITHMS ----------------------------------------------------------------
 From : Max Alekseyev                        2:5015/60      16 Jun 2002  16:34:32
 To : Alexander Kazak
 Subject : как рандомить подскажите плиз
 -------------------------------------------------------------------------------- 
 
 
 Replying to a message of Alexander Kazak to All:
 
  AK> У меня есть натуральное число N и натуральное число K<N. Как написать 
  AK> процедуру на Паскале, которая возвращает K случайных натуральных
  AK> чисел,  причём сумма их равна N?
 
 Выбираешь случайное сочетание K-1 элементов из N-1. Hапример, генерируешь
 случайную перестановку N-1 элементов классическим образом, и отбираешь первые
 K-1 элемент.
 
 Теперь по элементам 1 <= X[1] < X[2] < ... < X[K-1] <= N-1 определяешь
 Y[1] = X[1]
 Y[2] = X[2]-X[1]
 Y[3] = X[3]-X[2]
 ...
 Y[K-1] = X[K-1]-X[K-2]
 Y[K] = N - X[K-1]
 
 Очевидно, Y[1] + Y[2] + ... + Y[K] = N
 
 Regards,      ш.ш
         Max    ~
 
 --- OS/2 Uptime:  1d 18h 42m 41s 289ms
  * Origin: Медведь выходит на охоту душить собак. (2:5015/60)
 
 

Вернуться к списку тем, сортированных по: возрастание даты  уменьшение даты  тема  автор 

 Тема:    Автор:    Дата:  
 как рандомить подскажите плиз   Alexander Kazak   16 Jun 2002 23:11:08 
 RE:как рандомить подскажите плиз   Anatoly Svishev   17 Jun 2002 01:17:19 
 как рандомить подскажите плиз   Max Alekseyev   16 Jun 2002 16:34:32 
 Re: как рандомить подскажите плиз   Kilew   17 Jun 2002 03:48:31 
 как рандомить подскажите плиз   Alexander Chelmodeev   17 Jun 2002 11:33:16 
 как рандомить подскажите плиз   Alexander Chelmodeev   20 Jun 2002 12:29:53 
Архивное /ru.algorithms/18133d0cbf5a.html, оценка 1 из 5, голосов 10
Яндекс.Метрика
Valid HTML 4.01 Transitional