All about flooble | fun stuff | Get a free chatterbox | Free JavaScript | Avatars
 perplexus dot info

 Random Number Generator (Posted on 2004-06-08)
A particular random number generator returns positive integer n with probability 1/(2^n). (ie '1' with probability 1/2, '2' with probability 1/4, '3' with probability 1/8, etc.)

Using this random number generator, write an algorithm which chooses a random integer from 1 to 37 with equal probability.

 See The Solution Submitted by Brian Smith Rating: 2.0000 (1 votes)

Comments: ( Back to comment list | You must be logged in to post comments.)
 re: solution | Comment 12 of 26 |
(In reply to solution by Charlie)

For the record, the solution I posted averages 4 calls to the RNG for each random 1-64 produced. So when 27 of the 64 are thrown out the average grows to 4*64/37 = 6.9 RNG calls per number 1-37.

Brian Smith's is therefore the superior algorithm.

Edited on June 15, 2004, 10:34 am
 Posted by Charlie on 2004-06-15 09:26:49

 Search: Search body:
Forums (0)