64#define RANDMUL 1664525L
65#define RANDADD 1013904223L
67#define RAND(seed) ((seed = seed * RANDMUL + RANDADD) & 0xFFFFFFFF)
95 Random(
long s = 0x7654321);
105 unsigned long NextInt();
111 void InitMersenne(
unsigned long s);
120 double Uniform(
double lo = 0.0,
double hi = 1.0)
122 return lo + (hi - lo) * Next();
125 void Choose(
int * array,
int n,
int k);
126 void Choose(
int * array,
float * weights,
int n,
int k);
130extern Random globalRandom;