가장 빠르고, 가장 똑똑하고, 가장 총명하고, 가장 부유한 사람에게 큰 승리는 오지 않는다. 큰 승리는 넘어질 때마다 일어나는 사람에게 오는 것이다. - 헨리에트 앤 클라우저의 "종이 위의 기적, 쓰면 이루어진다" 중에서 (아침편지)
1 난수 테이블 초기 종자값을 얻기에 알맞은 생성기 #
- 원문 링크 :
http://h21007.www2.hp.com/dspp/tech/tech_TechDocumentDetailPage_IDX/1,1701,2147,00.html
static int s1 = 0x52f7d319; static int s2 = 0x6e28014a; public static int nextInt() { // MWC generator, period length 1014595583 final int v1 = s1; final int v2 = s2; return ((s1 = 36969 * (v1 & 0xffff) + (v1 >>> 16)) << 16) ^ (s2 = 30963 * (v2 & 0xffff) + (v2 >>> 16)); } public static long nextLong() { return (((long) nextInt()) << 32) + nextInt(); } public static float nextFloat() /* from 0.0 to 0.99999999 */ { return 5.9604645e-8f * (0x00ffffff & nextInt()); } public static double nextDouble() /* from 0.0 to 0.99999999 */ { return 2.22044604925031e-16 * (0x000fffffffffffffL & nextLong()); }








