Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <climits>
- #include <iostream>
- using namespace std;
- int Rand(int Seed)
- {
- const int MBIG = INT_MAX;
- const int MSEED = 161803398;
- int inext;
- int inextp;
- int SeedArray[56];
- {
- int ii;
- int mj, mk;
- // Initialize our Seed array.
- // This algorithm comes from Numerical Recipes in C (2nd Ed.)
- int subtraction = Seed;
- mj = MSEED - subtraction;
- SeedArray[55] = mj;
- mk = 1;
- {
- ii = (21 * 1) % 55;
- SeedArray[ii] = mk;
- mk = mj - mk;
- if (mk < 0)
- mk += MBIG;
- mj = SeedArray[ii];
- }
- {
- ii = (21 * 2) % 55;
- SeedArray[ii] = mk;
- mk = mj - mk;
- if (mk < 0)
- mk += MBIG;
- mj = SeedArray[ii];
- }
- {
- ii = (21 * 3) % 55;
- SeedArray[ii] = mk;
- mk = mj - mk;
- if (mk < 0)
- mk += MBIG;
- mj = SeedArray[ii];
- }
- {
- ii = (21 * 4) % 55;
- SeedArray[ii] = mk;
- mk = mj - mk;
- if (mk < 0)
- mk += MBIG;
- mj = SeedArray[ii];
- }
- {
- ii = (21 * 5) % 55;
- SeedArray[ii] = mk;
- mk = mj - mk;
- if (mk < 0)
- mk += MBIG;
- mj = SeedArray[ii];
- }
- {
- ii = (21 * 6) % 55;
- SeedArray[ii] = mk;
- mk = mj - mk;
- if (mk < 0)
- mk += MBIG;
- mj = SeedArray[ii];
- }
- {
- ii = (21 * 7) % 55;
- SeedArray[ii] = mk;
- mk = mj - mk;
- if (mk < 0)
- mk += MBIG;
- mj = SeedArray[ii];
- }
- {
- ii = (21 * 8) % 55;
- SeedArray[ii] = mk;
- mk = mj - mk;
- if (mk < 0)
- mk += MBIG;
- mj = SeedArray[ii];
- }
- {
- ii = (21 * 9) % 55;
- SeedArray[ii] = mk;
- mk = mj - mk;
- if (mk < 0)
- mk += MBIG;
- mj = SeedArray[ii];
- }
- {
- ii = (21 * 10) % 55;
- SeedArray[ii] = mk;
- mk = mj - mk;
- if (mk < 0)
- mk += MBIG;
- mj = SeedArray[ii];
- }
- {
- ii = (21 * 11) % 55;
- SeedArray[ii] = mk;
- mk = mj - mk;
- if (mk < 0)
- mk += MBIG;
- mj = SeedArray[ii];
- }
- {
- ii = (21 * 12) % 55;
- SeedArray[ii] = mk;
- mk = mj - mk;
- if (mk < 0)
- mk += MBIG;
- mj = SeedArray[ii];
- }
- {
- ii = (21 * 13) % 55;
- SeedArray[ii] = mk;
- mk = mj - mk;
- if (mk < 0)
- mk += MBIG;
- mj = SeedArray[ii];
- }
- {
- ii = (21 * 14) % 55;
- SeedArray[ii] = mk;
- mk = mj - mk;
- if (mk < 0)
- mk += MBIG;
- mj = SeedArray[ii];
- }
- {
- ii = (21 * 15) % 55;
- SeedArray[ii] = mk;
- mk = mj - mk;
- if (mk < 0)
- mk += MBIG;
- mj = SeedArray[ii];
- }
- {
- ii = (21 * 16) % 55;
- SeedArray[ii] = mk;
- mk = mj - mk;
- if (mk < 0)
- mk += MBIG;
- mj = SeedArray[ii];
- }
- {
- ii = (21 * 17) % 55;
- SeedArray[ii] = mk;
- mk = mj - mk;
- if (mk < 0)
- mk += MBIG;
- mj = SeedArray[ii];
- }
- {
- ii = (21 * 18) % 55;
- SeedArray[ii] = mk;
- mk = mj - mk;
- if (mk < 0)
- mk += MBIG;
- mj = SeedArray[ii];
- }
- {
- ii = (21 * 19) % 55;
- SeedArray[ii] = mk;
- mk = mj - mk;
- if (mk < 0)
- mk += MBIG;
- mj = SeedArray[ii];
- }
- {
- ii = (21 * 20) % 55;
- SeedArray[ii] = mk;
- mk = mj - mk;
- if (mk < 0)
- mk += MBIG;
- mj = SeedArray[ii];
- }
- {
- ii = (21 * 21) % 55;
- SeedArray[ii] = mk;
- mk = mj - mk;
- if (mk < 0)
- mk += MBIG;
- mj = SeedArray[ii];
- }
- {
- ii = (21 * 22) % 55;
- SeedArray[ii] = mk;
- mk = mj - mk;
- if (mk < 0)
- mk += MBIG;
- mj = SeedArray[ii];
- }
- {
- ii = (21 * 23) % 55;
- SeedArray[ii] = mk;
- mk = mj - mk;
- if (mk < 0)
- mk += MBIG;
- mj = SeedArray[ii];
- }
- {
- ii = (21 * 24) % 55;
- SeedArray[ii] = mk;
- mk = mj - mk;
- if (mk < 0)
- mk += MBIG;
- mj = SeedArray[ii];
- }
- {
- ii = (21 * 25) % 55;
- SeedArray[ii] = mk;
- mk = mj - mk;
- if (mk < 0)
- mk += MBIG;
- mj = SeedArray[ii];
- }
- {
- ii = (21 * 26) % 55;
- SeedArray[ii] = mk;
- mk = mj - mk;
- if (mk < 0)
- mk += MBIG;
- mj = SeedArray[ii];
- }
- {
- ii = (21 * 27) % 55;
- SeedArray[ii] = mk;
- mk = mj - mk;
- if (mk < 0)
- mk += MBIG;
- mj = SeedArray[ii];
- }
- {
- ii = (21 * 28) % 55;
- SeedArray[ii] = mk;
- mk = mj - mk;
- if (mk < 0)
- mk += MBIG;
- mj = SeedArray[ii];
- }
- {
- ii = (21 * 29) % 55;
- SeedArray[ii] = mk;
- mk = mj - mk;
- if (mk < 0)
- mk += MBIG;
- mj = SeedArray[ii];
- }
- {
- ii = (21 * 30) % 55;
- SeedArray[ii] = mk;
- mk = mj - mk;
- if (mk < 0)
- mk += MBIG;
- mj = SeedArray[ii];
- }
- {
- ii = (21 * 31) % 55;
- SeedArray[ii] = mk;
- mk = mj - mk;
- if (mk < 0)
- mk += MBIG;
- mj = SeedArray[ii];
- }
- {
- ii = (21 * 32) % 55;
- SeedArray[ii] = mk;
- mk = mj - mk;
- if (mk < 0)
- mk += MBIG;
- mj = SeedArray[ii];
- }
- {
- ii = (21 * 33) % 55;
- SeedArray[ii] = mk;
- mk = mj - mk;
- if (mk < 0)
- mk += MBIG;
- mj = SeedArray[ii];
- }
- {
- ii = (21 * 34) % 55;
- SeedArray[ii] = mk;
- mk = mj - mk;
- if (mk < 0)
- mk += MBIG;
- mj = SeedArray[ii];
- }
- {
- ii = (21 * 35) % 55;
- SeedArray[ii] = mk;
- mk = mj - mk;
- if (mk < 0)
- mk += MBIG;
- mj = SeedArray[ii];
- }
- {
- ii = (21 * 36) % 55;
- SeedArray[ii] = mk;
- mk = mj - mk;
- if (mk < 0)
- mk += MBIG;
- mj = SeedArray[ii];
- }
- {
- ii = (21 * 37) % 55;
- SeedArray[ii] = mk;
- mk = mj - mk;
- if (mk < 0)
- mk += MBIG;
- mj = SeedArray[ii];
- }
- {
- ii = (21 * 38) % 55;
- SeedArray[ii] = mk;
- mk = mj - mk;
- if (mk < 0)
- mk += MBIG;
- mj = SeedArray[ii];
- }
- {
- ii = (21 * 39) % 55;
- SeedArray[ii] = mk;
- mk = mj - mk;
- if (mk < 0)
- mk += MBIG;
- mj = SeedArray[ii];
- }
- {
- ii = (21 * 40) % 55;
- SeedArray[ii] = mk;
- mk = mj - mk;
- if (mk < 0)
- mk += MBIG;
- mj = SeedArray[ii];
- }
- {
- ii = (21 * 41) % 55;
- SeedArray[ii] = mk;
- mk = mj - mk;
- if (mk < 0)
- mk += MBIG;
- mj = SeedArray[ii];
- }
- {
- ii = (21 * 42) % 55;
- SeedArray[ii] = mk;
- mk = mj - mk;
- if (mk < 0)
- mk += MBIG;
- mj = SeedArray[ii];
- }
- {
- ii = (21 * 43) % 55;
- SeedArray[ii] = mk;
- mk = mj - mk;
- if (mk < 0)
- mk += MBIG;
- mj = SeedArray[ii];
- }
- {
- ii = (21 * 44) % 55;
- SeedArray[ii] = mk;
- mk = mj - mk;
- if (mk < 0)
- mk += MBIG;
- mj = SeedArray[ii];
- }
- {
- ii = (21 * 45) % 55;
- SeedArray[ii] = mk;
- mk = mj - mk;
- if (mk < 0)
- mk += MBIG;
- mj = SeedArray[ii];
- }
- {
- ii = (21 * 46) % 55;
- SeedArray[ii] = mk;
- mk = mj - mk;
- if (mk < 0)
- mk += MBIG;
- mj = SeedArray[ii];
- }
- {
- ii = (21 * 47) % 55;
- SeedArray[ii] = mk;
- mk = mj - mk;
- if (mk < 0)
- mk += MBIG;
- mj = SeedArray[ii];
- }
- {
- ii = (21 * 48) % 55;
- SeedArray[ii] = mk;
- mk = mj - mk;
- if (mk < 0)
- mk += MBIG;
- mj = SeedArray[ii];
- }
- {
- ii = (21 * 49) % 55;
- SeedArray[ii] = mk;
- mk = mj - mk;
- if (mk < 0)
- mk += MBIG;
- mj = SeedArray[ii];
- }
- {
- ii = (21 * 50) % 55;
- SeedArray[ii] = mk;
- mk = mj - mk;
- if (mk < 0)
- mk += MBIG;
- mj = SeedArray[ii];
- }
- {
- ii = (21 * 51) % 55;
- SeedArray[ii] = mk;
- mk = mj - mk;
- if (mk < 0)
- mk += MBIG;
- mj = SeedArray[ii];
- }
- {
- ii = (21 * 52) % 55;
- SeedArray[ii] = mk;
- mk = mj - mk;
- if (mk < 0)
- mk += MBIG;
- mj = SeedArray[ii];
- }
- {
- ii = (21 * 53) % 55;
- SeedArray[ii] = mk;
- mk = mj - mk;
- if (mk < 0)
- mk += MBIG;
- mj = SeedArray[ii];
- }
- {
- ii = (21 * 54) % 55;
- SeedArray[ii] = mk;
- mk = mj - mk;
- if (mk < 0)
- mk += MBIG;
- mj = SeedArray[ii];
- }
- {
- SeedArray[1] -= SeedArray[1 + (1 + 30) % 55];
- if (SeedArray[1] < 0)
- SeedArray[1] += MBIG;
- }
- {
- SeedArray[2] -= SeedArray[1 + (2 + 30) % 55];
- if (SeedArray[2] < 0)
- SeedArray[2] += MBIG;
- }
- {
- SeedArray[3] -= SeedArray[1 + (3 + 30) % 55];
- if (SeedArray[3] < 0)
- SeedArray[3] += MBIG;
- }
- {
- SeedArray[4] -= SeedArray[1 + (4 + 30) % 55];
- if (SeedArray[4] < 0)
- SeedArray[4] += MBIG;
- }
- {
- SeedArray[5] -= SeedArray[1 + (5 + 30) % 55];
- if (SeedArray[5] < 0)
- SeedArray[5] += MBIG;
- }
- {
- SeedArray[6] -= SeedArray[1 + (6 + 30) % 55];
- if (SeedArray[6] < 0)
- SeedArray[6] += MBIG;
- }
- {
- SeedArray[7] -= SeedArray[1 + (7 + 30) % 55];
- if (SeedArray[7] < 0)
- SeedArray[7] += MBIG;
- }
- {
- SeedArray[8] -= SeedArray[1 + (8 + 30) % 55];
- if (SeedArray[8] < 0)
- SeedArray[8] += MBIG;
- }
- {
- SeedArray[9] -= SeedArray[1 + (9 + 30) % 55];
- if (SeedArray[9] < 0)
- SeedArray[9] += MBIG;
- }
- {
- SeedArray[10] -= SeedArray[1 + (10 + 30) % 55];
- if (SeedArray[10] < 0)
- SeedArray[10] += MBIG;
- }
- {
- SeedArray[11] -= SeedArray[1 + (11 + 30) % 55];
- if (SeedArray[11] < 0)
- SeedArray[11] += MBIG;
- }
- {
- SeedArray[12] -= SeedArray[1 + (12 + 30) % 55];
- if (SeedArray[12] < 0)
- SeedArray[12] += MBIG;
- }
- {
- SeedArray[13] -= SeedArray[1 + (13 + 30) % 55];
- if (SeedArray[13] < 0)
- SeedArray[13] += MBIG;
- }
- {
- SeedArray[14] -= SeedArray[1 + (14 + 30) % 55];
- if (SeedArray[14] < 0)
- SeedArray[14] += MBIG;
- }
- {
- SeedArray[15] -= SeedArray[1 + (15 + 30) % 55];
- if (SeedArray[15] < 0)
- SeedArray[15] += MBIG;
- }
- {
- SeedArray[16] -= SeedArray[1 + (16 + 30) % 55];
- if (SeedArray[16] < 0)
- SeedArray[16] += MBIG;
- }
- {
- SeedArray[17] -= SeedArray[1 + (17 + 30) % 55];
- if (SeedArray[17] < 0)
- SeedArray[17] += MBIG;
- }
- {
- SeedArray[18] -= SeedArray[1 + (18 + 30) % 55];
- if (SeedArray[18] < 0)
- SeedArray[18] += MBIG;
- }
- {
- SeedArray[19] -= SeedArray[1 + (19 + 30) % 55];
- if (SeedArray[19] < 0)
- SeedArray[19] += MBIG;
- }
- {
- SeedArray[20] -= SeedArray[1 + (20 + 30) % 55];
- if (SeedArray[20] < 0)
- SeedArray[20] += MBIG;
- }
- {
- SeedArray[21] -= SeedArray[1 + (21 + 30) % 55];
- if (SeedArray[21] < 0)
- SeedArray[21] += MBIG;
- }
- {
- SeedArray[22] -= SeedArray[1 + (22 + 30) % 55];
- if (SeedArray[22] < 0)
- SeedArray[22] += MBIG;
- }
- {
- SeedArray[23] -= SeedArray[1 + (23 + 30) % 55];
- if (SeedArray[23] < 0)
- SeedArray[23] += MBIG;
- }
- {
- SeedArray[24] -= SeedArray[1 + (24 + 30) % 55];
- if (SeedArray[24] < 0)
- SeedArray[24] += MBIG;
- }
- {
- SeedArray[25] -= SeedArray[1 + (25 + 30) % 55];
- if (SeedArray[25] < 0)
- SeedArray[25] += MBIG;
- }
- {
- SeedArray[26] -= SeedArray[1 + (26 + 30) % 55];
- if (SeedArray[26] < 0)
- SeedArray[26] += MBIG;
- }
- {
- SeedArray[27] -= SeedArray[1 + (27 + 30) % 55];
- if (SeedArray[27] < 0)
- SeedArray[27] += MBIG;
- }
- {
- SeedArray[28] -= SeedArray[1 + (28 + 30) % 55];
- if (SeedArray[28] < 0)
- SeedArray[28] += MBIG;
- }
- {
- SeedArray[29] -= SeedArray[1 + (29 + 30) % 55];
- if (SeedArray[29] < 0)
- SeedArray[29] += MBIG;
- }
- {
- SeedArray[30] -= SeedArray[1 + (30 + 30) % 55];
- if (SeedArray[30] < 0)
- SeedArray[30] += MBIG;
- }
- {
- SeedArray[31] -= SeedArray[1 + (31 + 30) % 55];
- if (SeedArray[31] < 0)
- SeedArray[31] += MBIG;
- }
- {
- SeedArray[32] -= SeedArray[1 + (32 + 30) % 55];
- if (SeedArray[32] < 0)
- SeedArray[32] += MBIG;
- }
- {
- SeedArray[33] -= SeedArray[1 + (33 + 30) % 55];
- if (SeedArray[33] < 0)
- SeedArray[33] += MBIG;
- }
- {
- SeedArray[34] -= SeedArray[1 + (34 + 30) % 55];
- if (SeedArray[34] < 0)
- SeedArray[34] += MBIG;
- }
- {
- SeedArray[35] -= SeedArray[1 + (35 + 30) % 55];
- if (SeedArray[35] < 0)
- SeedArray[35] += MBIG;
- }
- {
- SeedArray[36] -= SeedArray[1 + (36 + 30) % 55];
- if (SeedArray[36] < 0)
- SeedArray[36] += MBIG;
- }
- {
- SeedArray[37] -= SeedArray[1 + (37 + 30) % 55];
- if (SeedArray[37] < 0)
- SeedArray[37] += MBIG;
- }
- {
- SeedArray[38] -= SeedArray[1 + (38 + 30) % 55];
- if (SeedArray[38] < 0)
- SeedArray[38] += MBIG;
- }
- {
- SeedArray[39] -= SeedArray[1 + (39 + 30) % 55];
- if (SeedArray[39] < 0)
- SeedArray[39] += MBIG;
- }
- {
- SeedArray[40] -= SeedArray[1 + (40 + 30) % 55];
- if (SeedArray[40] < 0)
- SeedArray[40] += MBIG;
- }
- {
- SeedArray[41] -= SeedArray[1 + (41 + 30) % 55];
- if (SeedArray[41] < 0)
- SeedArray[41] += MBIG;
- }
- {
- SeedArray[42] -= SeedArray[1 + (42 + 30) % 55];
- if (SeedArray[42] < 0)
- SeedArray[42] += MBIG;
- }
- {
- SeedArray[43] -= SeedArray[1 + (43 + 30) % 55];
- if (SeedArray[43] < 0)
- SeedArray[43] += MBIG;
- }
- {
- SeedArray[44] -= SeedArray[1 + (44 + 30) % 55];
- if (SeedArray[44] < 0)
- SeedArray[44] += MBIG;
- }
- {
- SeedArray[45] -= SeedArray[1 + (45 + 30) % 55];
- if (SeedArray[45] < 0)
- SeedArray[45] += MBIG;
- }
- {
- SeedArray[46] -= SeedArray[1 + (46 + 30) % 55];
- if (SeedArray[46] < 0)
- SeedArray[46] += MBIG;
- }
- {
- SeedArray[47] -= SeedArray[1 + (47 + 30) % 55];
- if (SeedArray[47] < 0)
- SeedArray[47] += MBIG;
- }
- {
- SeedArray[48] -= SeedArray[1 + (48 + 30) % 55];
- if (SeedArray[48] < 0)
- SeedArray[48] += MBIG;
- }
- {
- SeedArray[49] -= SeedArray[1 + (49 + 30) % 55];
- if (SeedArray[49] < 0)
- SeedArray[49] += MBIG;
- }
- {
- SeedArray[50] -= SeedArray[1 + (50 + 30) % 55];
- if (SeedArray[50] < 0)
- SeedArray[50] += MBIG;
- }
- {
- SeedArray[51] -= SeedArray[1 + (51 + 30) % 55];
- if (SeedArray[51] < 0)
- SeedArray[51] += MBIG;
- }
- {
- SeedArray[52] -= SeedArray[1 + (52 + 30) % 55];
- if (SeedArray[52] < 0)
- SeedArray[52] += MBIG;
- }
- {
- SeedArray[53] -= SeedArray[1 + (53 + 30) % 55];
- if (SeedArray[53] < 0)
- SeedArray[53] += MBIG;
- }
- {
- SeedArray[54] -= SeedArray[1 + (54 + 30) % 55];
- if (SeedArray[54] < 0)
- SeedArray[54] += MBIG;
- }
- {
- SeedArray[55] -= SeedArray[1 + (55 + 30) % 55];
- if (SeedArray[55] < 0)
- SeedArray[55] += MBIG;
- }
- {
- SeedArray[1] -= SeedArray[1 + (1 + 30) % 55];
- if (SeedArray[1] < 0)
- SeedArray[1] += MBIG;
- }
- {
- SeedArray[2] -= SeedArray[1 + (2 + 30) % 55];
- if (SeedArray[2] < 0)
- SeedArray[2] += MBIG;
- }
- {
- SeedArray[3] -= SeedArray[1 + (3 + 30) % 55];
- if (SeedArray[3] < 0)
- SeedArray[3] += MBIG;
- }
- {
- SeedArray[4] -= SeedArray[1 + (4 + 30) % 55];
- if (SeedArray[4] < 0)
- SeedArray[4] += MBIG;
- }
- {
- SeedArray[5] -= SeedArray[1 + (5 + 30) % 55];
- if (SeedArray[5] < 0)
- SeedArray[5] += MBIG;
- }
- {
- SeedArray[6] -= SeedArray[1 + (6 + 30) % 55];
- if (SeedArray[6] < 0)
- SeedArray[6] += MBIG;
- }
- {
- SeedArray[7] -= SeedArray[1 + (7 + 30) % 55];
- if (SeedArray[7] < 0)
- SeedArray[7] += MBIG;
- }
- {
- SeedArray[8] -= SeedArray[1 + (8 + 30) % 55];
- if (SeedArray[8] < 0)
- SeedArray[8] += MBIG;
- }
- {
- SeedArray[9] -= SeedArray[1 + (9 + 30) % 55];
- if (SeedArray[9] < 0)
- SeedArray[9] += MBIG;
- }
- {
- SeedArray[10] -= SeedArray[1 + (10 + 30) % 55];
- if (SeedArray[10] < 0)
- SeedArray[10] += MBIG;
- }
- {
- SeedArray[11] -= SeedArray[1 + (11 + 30) % 55];
- if (SeedArray[11] < 0)
- SeedArray[11] += MBIG;
- }
- {
- SeedArray[12] -= SeedArray[1 + (12 + 30) % 55];
- if (SeedArray[12] < 0)
- SeedArray[12] += MBIG;
- }
- {
- SeedArray[13] -= SeedArray[1 + (13 + 30) % 55];
- if (SeedArray[13] < 0)
- SeedArray[13] += MBIG;
- }
- {
- SeedArray[14] -= SeedArray[1 + (14 + 30) % 55];
- if (SeedArray[14] < 0)
- SeedArray[14] += MBIG;
- }
- {
- SeedArray[15] -= SeedArray[1 + (15 + 30) % 55];
- if (SeedArray[15] < 0)
- SeedArray[15] += MBIG;
- }
- {
- SeedArray[16] -= SeedArray[1 + (16 + 30) % 55];
- if (SeedArray[16] < 0)
- SeedArray[16] += MBIG;
- }
- {
- SeedArray[17] -= SeedArray[1 + (17 + 30) % 55];
- if (SeedArray[17] < 0)
- SeedArray[17] += MBIG;
- }
- {
- SeedArray[18] -= SeedArray[1 + (18 + 30) % 55];
- if (SeedArray[18] < 0)
- SeedArray[18] += MBIG;
- }
- {
- SeedArray[19] -= SeedArray[1 + (19 + 30) % 55];
- if (SeedArray[19] < 0)
- SeedArray[19] += MBIG;
- }
- {
- SeedArray[20] -= SeedArray[1 + (20 + 30) % 55];
- if (SeedArray[20] < 0)
- SeedArray[20] += MBIG;
- }
- {
- SeedArray[21] -= SeedArray[1 + (21 + 30) % 55];
- if (SeedArray[21] < 0)
- SeedArray[21] += MBIG;
- }
- {
- SeedArray[22] -= SeedArray[1 + (22 + 30) % 55];
- if (SeedArray[22] < 0)
- SeedArray[22] += MBIG;
- }
- {
- SeedArray[23] -= SeedArray[1 + (23 + 30) % 55];
- if (SeedArray[23] < 0)
- SeedArray[23] += MBIG;
- }
- {
- SeedArray[24] -= SeedArray[1 + (24 + 30) % 55];
- if (SeedArray[24] < 0)
- SeedArray[24] += MBIG;
- }
- {
- SeedArray[25] -= SeedArray[1 + (25 + 30) % 55];
- if (SeedArray[25] < 0)
- SeedArray[25] += MBIG;
- }
- {
- SeedArray[26] -= SeedArray[1 + (26 + 30) % 55];
- if (SeedArray[26] < 0)
- SeedArray[26] += MBIG;
- }
- {
- SeedArray[27] -= SeedArray[1 + (27 + 30) % 55];
- if (SeedArray[27] < 0)
- SeedArray[27] += MBIG;
- }
- {
- SeedArray[28] -= SeedArray[1 + (28 + 30) % 55];
- if (SeedArray[28] < 0)
- SeedArray[28] += MBIG;
- }
- {
- SeedArray[29] -= SeedArray[1 + (29 + 30) % 55];
- if (SeedArray[29] < 0)
- SeedArray[29] += MBIG;
- }
- {
- SeedArray[30] -= SeedArray[1 + (30 + 30) % 55];
- if (SeedArray[30] < 0)
- SeedArray[30] += MBIG;
- }
- {
- SeedArray[31] -= SeedArray[1 + (31 + 30) % 55];
- if (SeedArray[31] < 0)
- SeedArray[31] += MBIG;
- }
- {
- SeedArray[32] -= SeedArray[1 + (32 + 30) % 55];
- if (SeedArray[32] < 0)
- SeedArray[32] += MBIG;
- }
- {
- SeedArray[33] -= SeedArray[1 + (33 + 30) % 55];
- if (SeedArray[33] < 0)
- SeedArray[33] += MBIG;
- }
- {
- SeedArray[34] -= SeedArray[1 + (34 + 30) % 55];
- if (SeedArray[34] < 0)
- SeedArray[34] += MBIG;
- }
- {
- SeedArray[35] -= SeedArray[1 + (35 + 30) % 55];
- if (SeedArray[35] < 0)
- SeedArray[35] += MBIG;
- }
- {
- SeedArray[36] -= SeedArray[1 + (36 + 30) % 55];
- if (SeedArray[36] < 0)
- SeedArray[36] += MBIG;
- }
- {
- SeedArray[37] -= SeedArray[1 + (37 + 30) % 55];
- if (SeedArray[37] < 0)
- SeedArray[37] += MBIG;
- }
- {
- SeedArray[38] -= SeedArray[1 + (38 + 30) % 55];
- if (SeedArray[38] < 0)
- SeedArray[38] += MBIG;
- }
- {
- SeedArray[39] -= SeedArray[1 + (39 + 30) % 55];
- if (SeedArray[39] < 0)
- SeedArray[39] += MBIG;
- }
- {
- SeedArray[40] -= SeedArray[1 + (40 + 30) % 55];
- if (SeedArray[40] < 0)
- SeedArray[40] += MBIG;
- }
- {
- SeedArray[41] -= SeedArray[1 + (41 + 30) % 55];
- if (SeedArray[41] < 0)
- SeedArray[41] += MBIG;
- }
- {
- SeedArray[42] -= SeedArray[1 + (42 + 30) % 55];
- if (SeedArray[42] < 0)
- SeedArray[42] += MBIG;
- }
- {
- SeedArray[43] -= SeedArray[1 + (43 + 30) % 55];
- if (SeedArray[43] < 0)
- SeedArray[43] += MBIG;
- }
- {
- SeedArray[44] -= SeedArray[1 + (44 + 30) % 55];
- if (SeedArray[44] < 0)
- SeedArray[44] += MBIG;
- }
- {
- SeedArray[45] -= SeedArray[1 + (45 + 30) % 55];
- if (SeedArray[45] < 0)
- SeedArray[45] += MBIG;
- }
- {
- SeedArray[46] -= SeedArray[1 + (46 + 30) % 55];
- if (SeedArray[46] < 0)
- SeedArray[46] += MBIG;
- }
- {
- SeedArray[47] -= SeedArray[1 + (47 + 30) % 55];
- if (SeedArray[47] < 0)
- SeedArray[47] += MBIG;
- }
- {
- SeedArray[48] -= SeedArray[1 + (48 + 30) % 55];
- if (SeedArray[48] < 0)
- SeedArray[48] += MBIG;
- }
- {
- SeedArray[49] -= SeedArray[1 + (49 + 30) % 55];
- if (SeedArray[49] < 0)
- SeedArray[49] += MBIG;
- }
- {
- SeedArray[50] -= SeedArray[1 + (50 + 30) % 55];
- if (SeedArray[50] < 0)
- SeedArray[50] += MBIG;
- }
- {
- SeedArray[51] -= SeedArray[1 + (51 + 30) % 55];
- if (SeedArray[51] < 0)
- SeedArray[51] += MBIG;
- }
- {
- SeedArray[52] -= SeedArray[1 + (52 + 30) % 55];
- if (SeedArray[52] < 0)
- SeedArray[52] += MBIG;
- }
- {
- SeedArray[53] -= SeedArray[1 + (53 + 30) % 55];
- if (SeedArray[53] < 0)
- SeedArray[53] += MBIG;
- }
- {
- SeedArray[54] -= SeedArray[1 + (54 + 30) % 55];
- if (SeedArray[54] < 0)
- SeedArray[54] += MBIG;
- }
- {
- SeedArray[55] -= SeedArray[1 + (55 + 30) % 55];
- if (SeedArray[55] < 0)
- SeedArray[55] += MBIG;
- }
- {
- SeedArray[1] -= SeedArray[1 + (1 + 30) % 55];
- if (SeedArray[1] < 0)
- SeedArray[1] += MBIG;
- }
- {
- SeedArray[2] -= SeedArray[1 + (2 + 30) % 55];
- if (SeedArray[2] < 0)
- SeedArray[2] += MBIG;
- }
- {
- SeedArray[3] -= SeedArray[1 + (3 + 30) % 55];
- if (SeedArray[3] < 0)
- SeedArray[3] += MBIG;
- }
- {
- SeedArray[4] -= SeedArray[1 + (4 + 30) % 55];
- if (SeedArray[4] < 0)
- SeedArray[4] += MBIG;
- }
- {
- SeedArray[5] -= SeedArray[1 + (5 + 30) % 55];
- if (SeedArray[5] < 0)
- SeedArray[5] += MBIG;
- }
- {
- SeedArray[6] -= SeedArray[1 + (6 + 30) % 55];
- if (SeedArray[6] < 0)
- SeedArray[6] += MBIG;
- }
- {
- SeedArray[7] -= SeedArray[1 + (7 + 30) % 55];
- if (SeedArray[7] < 0)
- SeedArray[7] += MBIG;
- }
- {
- SeedArray[8] -= SeedArray[1 + (8 + 30) % 55];
- if (SeedArray[8] < 0)
- SeedArray[8] += MBIG;
- }
- {
- SeedArray[9] -= SeedArray[1 + (9 + 30) % 55];
- if (SeedArray[9] < 0)
- SeedArray[9] += MBIG;
- }
- {
- SeedArray[10] -= SeedArray[1 + (10 + 30) % 55];
- if (SeedArray[10] < 0)
- SeedArray[10] += MBIG;
- }
- {
- SeedArray[11] -= SeedArray[1 + (11 + 30) % 55];
- if (SeedArray[11] < 0)
- SeedArray[11] += MBIG;
- }
- {
- SeedArray[12] -= SeedArray[1 + (12 + 30) % 55];
- if (SeedArray[12] < 0)
- SeedArray[12] += MBIG;
- }
- {
- SeedArray[13] -= SeedArray[1 + (13 + 30) % 55];
- if (SeedArray[13] < 0)
- SeedArray[13] += MBIG;
- }
- {
- SeedArray[14] -= SeedArray[1 + (14 + 30) % 55];
- if (SeedArray[14] < 0)
- SeedArray[14] += MBIG;
- }
- {
- SeedArray[15] -= SeedArray[1 + (15 + 30) % 55];
- if (SeedArray[15] < 0)
- SeedArray[15] += MBIG;
- }
- {
- SeedArray[16] -= SeedArray[1 + (16 + 30) % 55];
- if (SeedArray[16] < 0)
- SeedArray[16] += MBIG;
- }
- {
- SeedArray[17] -= SeedArray[1 + (17 + 30) % 55];
- if (SeedArray[17] < 0)
- SeedArray[17] += MBIG;
- }
- {
- SeedArray[18] -= SeedArray[1 + (18 + 30) % 55];
- if (SeedArray[18] < 0)
- SeedArray[18] += MBIG;
- }
- {
- SeedArray[19] -= SeedArray[1 + (19 + 30) % 55];
- if (SeedArray[19] < 0)
- SeedArray[19] += MBIG;
- }
- {
- SeedArray[20] -= SeedArray[1 + (20 + 30) % 55];
- if (SeedArray[20] < 0)
- SeedArray[20] += MBIG;
- }
- {
- SeedArray[21] -= SeedArray[1 + (21 + 30) % 55];
- if (SeedArray[21] < 0)
- SeedArray[21] += MBIG;
- }
- {
- SeedArray[22] -= SeedArray[1 + (22 + 30) % 55];
- if (SeedArray[22] < 0)
- SeedArray[22] += MBIG;
- }
- {
- SeedArray[23] -= SeedArray[1 + (23 + 30) % 55];
- if (SeedArray[23] < 0)
- SeedArray[23] += MBIG;
- }
- {
- SeedArray[24] -= SeedArray[1 + (24 + 30) % 55];
- if (SeedArray[24] < 0)
- SeedArray[24] += MBIG;
- }
- {
- SeedArray[25] -= SeedArray[1 + (25 + 30) % 55];
- if (SeedArray[25] < 0)
- SeedArray[25] += MBIG;
- }
- {
- SeedArray[26] -= SeedArray[1 + (26 + 30) % 55];
- if (SeedArray[26] < 0)
- SeedArray[26] += MBIG;
- }
- {
- SeedArray[27] -= SeedArray[1 + (27 + 30) % 55];
- if (SeedArray[27] < 0)
- SeedArray[27] += MBIG;
- }
- {
- SeedArray[28] -= SeedArray[1 + (28 + 30) % 55];
- if (SeedArray[28] < 0)
- SeedArray[28] += MBIG;
- }
- {
- SeedArray[29] -= SeedArray[1 + (29 + 30) % 55];
- if (SeedArray[29] < 0)
- SeedArray[29] += MBIG;
- }
- {
- SeedArray[30] -= SeedArray[1 + (30 + 30) % 55];
- if (SeedArray[30] < 0)
- SeedArray[30] += MBIG;
- }
- {
- SeedArray[31] -= SeedArray[1 + (31 + 30) % 55];
- if (SeedArray[31] < 0)
- SeedArray[31] += MBIG;
- }
- {
- SeedArray[32] -= SeedArray[1 + (32 + 30) % 55];
- if (SeedArray[32] < 0)
- SeedArray[32] += MBIG;
- }
- {
- SeedArray[33] -= SeedArray[1 + (33 + 30) % 55];
- if (SeedArray[33] < 0)
- SeedArray[33] += MBIG;
- }
- {
- SeedArray[34] -= SeedArray[1 + (34 + 30) % 55];
- if (SeedArray[34] < 0)
- SeedArray[34] += MBIG;
- }
- {
- SeedArray[35] -= SeedArray[1 + (35 + 30) % 55];
- if (SeedArray[35] < 0)
- SeedArray[35] += MBIG;
- }
- {
- SeedArray[36] -= SeedArray[1 + (36 + 30) % 55];
- if (SeedArray[36] < 0)
- SeedArray[36] += MBIG;
- }
- {
- SeedArray[37] -= SeedArray[1 + (37 + 30) % 55];
- if (SeedArray[37] < 0)
- SeedArray[37] += MBIG;
- }
- {
- SeedArray[38] -= SeedArray[1 + (38 + 30) % 55];
- if (SeedArray[38] < 0)
- SeedArray[38] += MBIG;
- }
- {
- SeedArray[39] -= SeedArray[1 + (39 + 30) % 55];
- if (SeedArray[39] < 0)
- SeedArray[39] += MBIG;
- }
- {
- SeedArray[40] -= SeedArray[1 + (40 + 30) % 55];
- if (SeedArray[40] < 0)
- SeedArray[40] += MBIG;
- }
- {
- SeedArray[41] -= SeedArray[1 + (41 + 30) % 55];
- if (SeedArray[41] < 0)
- SeedArray[41] += MBIG;
- }
- {
- SeedArray[42] -= SeedArray[1 + (42 + 30) % 55];
- if (SeedArray[42] < 0)
- SeedArray[42] += MBIG;
- }
- {
- SeedArray[43] -= SeedArray[1 + (43 + 30) % 55];
- if (SeedArray[43] < 0)
- SeedArray[43] += MBIG;
- }
- {
- SeedArray[44] -= SeedArray[1 + (44 + 30) % 55];
- if (SeedArray[44] < 0)
- SeedArray[44] += MBIG;
- }
- {
- SeedArray[45] -= SeedArray[1 + (45 + 30) % 55];
- if (SeedArray[45] < 0)
- SeedArray[45] += MBIG;
- }
- {
- SeedArray[46] -= SeedArray[1 + (46 + 30) % 55];
- if (SeedArray[46] < 0)
- SeedArray[46] += MBIG;
- }
- {
- SeedArray[47] -= SeedArray[1 + (47 + 30) % 55];
- if (SeedArray[47] < 0)
- SeedArray[47] += MBIG;
- }
- {
- SeedArray[48] -= SeedArray[1 + (48 + 30) % 55];
- if (SeedArray[48] < 0)
- SeedArray[48] += MBIG;
- }
- {
- SeedArray[49] -= SeedArray[1 + (49 + 30) % 55];
- if (SeedArray[49] < 0)
- SeedArray[49] += MBIG;
- }
- {
- SeedArray[50] -= SeedArray[1 + (50 + 30) % 55];
- if (SeedArray[50] < 0)
- SeedArray[50] += MBIG;
- }
- {
- SeedArray[51] -= SeedArray[1 + (51 + 30) % 55];
- if (SeedArray[51] < 0)
- SeedArray[51] += MBIG;
- }
- {
- SeedArray[52] -= SeedArray[1 + (52 + 30) % 55];
- if (SeedArray[52] < 0)
- SeedArray[52] += MBIG;
- }
- {
- SeedArray[53] -= SeedArray[1 + (53 + 30) % 55];
- if (SeedArray[53] < 0)
- SeedArray[53] += MBIG;
- }
- {
- SeedArray[54] -= SeedArray[1 + (54 + 30) % 55];
- if (SeedArray[54] < 0)
- SeedArray[54] += MBIG;
- }
- {
- SeedArray[55] -= SeedArray[1 + (55 + 30) % 55];
- if (SeedArray[55] < 0)
- SeedArray[55] += MBIG;
- }
- {
- SeedArray[1] -= SeedArray[1 + (1 + 30) % 55];
- if (SeedArray[1] < 0)
- SeedArray[1] += MBIG;
- }
- {
- SeedArray[2] -= SeedArray[1 + (2 + 30) % 55];
- if (SeedArray[2] < 0)
- SeedArray[2] += MBIG;
- }
- {
- SeedArray[3] -= SeedArray[1 + (3 + 30) % 55];
- if (SeedArray[3] < 0)
- SeedArray[3] += MBIG;
- }
- {
- SeedArray[4] -= SeedArray[1 + (4 + 30) % 55];
- if (SeedArray[4] < 0)
- SeedArray[4] += MBIG;
- }
- {
- SeedArray[5] -= SeedArray[1 + (5 + 30) % 55];
- if (SeedArray[5] < 0)
- SeedArray[5] += MBIG;
- }
- {
- SeedArray[6] -= SeedArray[1 + (6 + 30) % 55];
- if (SeedArray[6] < 0)
- SeedArray[6] += MBIG;
- }
- {
- SeedArray[7] -= SeedArray[1 + (7 + 30) % 55];
- if (SeedArray[7] < 0)
- SeedArray[7] += MBIG;
- }
- {
- SeedArray[8] -= SeedArray[1 + (8 + 30) % 55];
- if (SeedArray[8] < 0)
- SeedArray[8] += MBIG;
- }
- {
- SeedArray[9] -= SeedArray[1 + (9 + 30) % 55];
- if (SeedArray[9] < 0)
- SeedArray[9] += MBIG;
- }
- {
- SeedArray[10] -= SeedArray[1 + (10 + 30) % 55];
- if (SeedArray[10] < 0)
- SeedArray[10] += MBIG;
- }
- {
- SeedArray[11] -= SeedArray[1 + (11 + 30) % 55];
- if (SeedArray[11] < 0)
- SeedArray[11] += MBIG;
- }
- {
- SeedArray[12] -= SeedArray[1 + (12 + 30) % 55];
- if (SeedArray[12] < 0)
- SeedArray[12] += MBIG;
- }
- {
- SeedArray[13] -= SeedArray[1 + (13 + 30) % 55];
- if (SeedArray[13] < 0)
- SeedArray[13] += MBIG;
- }
- {
- SeedArray[14] -= SeedArray[1 + (14 + 30) % 55];
- if (SeedArray[14] < 0)
- SeedArray[14] += MBIG;
- }
- {
- SeedArray[15] -= SeedArray[1 + (15 + 30) % 55];
- if (SeedArray[15] < 0)
- SeedArray[15] += MBIG;
- }
- {
- SeedArray[16] -= SeedArray[1 + (16 + 30) % 55];
- if (SeedArray[16] < 0)
- SeedArray[16] += MBIG;
- }
- {
- SeedArray[17] -= SeedArray[1 + (17 + 30) % 55];
- if (SeedArray[17] < 0)
- SeedArray[17] += MBIG;
- }
- {
- SeedArray[18] -= SeedArray[1 + (18 + 30) % 55];
- if (SeedArray[18] < 0)
- SeedArray[18] += MBIG;
- }
- {
- SeedArray[19] -= SeedArray[1 + (19 + 30) % 55];
- if (SeedArray[19] < 0)
- SeedArray[19] += MBIG;
- }
- {
- SeedArray[20] -= SeedArray[1 + (20 + 30) % 55];
- if (SeedArray[20] < 0)
- SeedArray[20] += MBIG;
- }
- {
- SeedArray[21] -= SeedArray[1 + (21 + 30) % 55];
- if (SeedArray[21] < 0)
- SeedArray[21] += MBIG;
- }
- {
- SeedArray[22] -= SeedArray[1 + (22 + 30) % 55];
- if (SeedArray[22] < 0)
- SeedArray[22] += MBIG;
- }
- {
- SeedArray[23] -= SeedArray[1 + (23 + 30) % 55];
- if (SeedArray[23] < 0)
- SeedArray[23] += MBIG;
- }
- {
- SeedArray[24] -= SeedArray[1 + (24 + 30) % 55];
- if (SeedArray[24] < 0)
- SeedArray[24] += MBIG;
- }
- {
- SeedArray[25] -= SeedArray[1 + (25 + 30) % 55];
- if (SeedArray[25] < 0)
- SeedArray[25] += MBIG;
- }
- {
- SeedArray[26] -= SeedArray[1 + (26 + 30) % 55];
- if (SeedArray[26] < 0)
- SeedArray[26] += MBIG;
- }
- {
- SeedArray[27] -= SeedArray[1 + (27 + 30) % 55];
- if (SeedArray[27] < 0)
- SeedArray[27] += MBIG;
- }
- {
- SeedArray[28] -= SeedArray[1 + (28 + 30) % 55];
- if (SeedArray[28] < 0)
- SeedArray[28] += MBIG;
- }
- {
- SeedArray[29] -= SeedArray[1 + (29 + 30) % 55];
- if (SeedArray[29] < 0)
- SeedArray[29] += MBIG;
- }
- {
- SeedArray[30] -= SeedArray[1 + (30 + 30) % 55];
- if (SeedArray[30] < 0)
- SeedArray[30] += MBIG;
- }
- {
- SeedArray[31] -= SeedArray[1 + (31 + 30) % 55];
- if (SeedArray[31] < 0)
- SeedArray[31] += MBIG;
- }
- {
- SeedArray[32] -= SeedArray[1 + (32 + 30) % 55];
- if (SeedArray[32] < 0)
- SeedArray[32] += MBIG;
- }
- {
- SeedArray[33] -= SeedArray[1 + (33 + 30) % 55];
- if (SeedArray[33] < 0)
- SeedArray[33] += MBIG;
- }
- {
- SeedArray[34] -= SeedArray[1 + (34 + 30) % 55];
- if (SeedArray[34] < 0)
- SeedArray[34] += MBIG;
- }
- {
- SeedArray[35] -= SeedArray[1 + (35 + 30) % 55];
- if (SeedArray[35] < 0)
- SeedArray[35] += MBIG;
- }
- {
- SeedArray[36] -= SeedArray[1 + (36 + 30) % 55];
- if (SeedArray[36] < 0)
- SeedArray[36] += MBIG;
- }
- {
- SeedArray[37] -= SeedArray[1 + (37 + 30) % 55];
- if (SeedArray[37] < 0)
- SeedArray[37] += MBIG;
- }
- {
- SeedArray[38] -= SeedArray[1 + (38 + 30) % 55];
- if (SeedArray[38] < 0)
- SeedArray[38] += MBIG;
- }
- {
- SeedArray[39] -= SeedArray[1 + (39 + 30) % 55];
- if (SeedArray[39] < 0)
- SeedArray[39] += MBIG;
- }
- {
- SeedArray[40] -= SeedArray[1 + (40 + 30) % 55];
- if (SeedArray[40] < 0)
- SeedArray[40] += MBIG;
- }
- {
- SeedArray[41] -= SeedArray[1 + (41 + 30) % 55];
- if (SeedArray[41] < 0)
- SeedArray[41] += MBIG;
- }
- {
- SeedArray[42] -= SeedArray[1 + (42 + 30) % 55];
- if (SeedArray[42] < 0)
- SeedArray[42] += MBIG;
- }
- {
- SeedArray[43] -= SeedArray[1 + (43 + 30) % 55];
- if (SeedArray[43] < 0)
- SeedArray[43] += MBIG;
- }
- {
- SeedArray[44] -= SeedArray[1 + (44 + 30) % 55];
- if (SeedArray[44] < 0)
- SeedArray[44] += MBIG;
- }
- {
- SeedArray[45] -= SeedArray[1 + (45 + 30) % 55];
- if (SeedArray[45] < 0)
- SeedArray[45] += MBIG;
- }
- {
- SeedArray[46] -= SeedArray[1 + (46 + 30) % 55];
- if (SeedArray[46] < 0)
- SeedArray[46] += MBIG;
- }
- {
- SeedArray[47] -= SeedArray[1 + (47 + 30) % 55];
- if (SeedArray[47] < 0)
- SeedArray[47] += MBIG;
- }
- {
- SeedArray[48] -= SeedArray[1 + (48 + 30) % 55];
- if (SeedArray[48] < 0)
- SeedArray[48] += MBIG;
- }
- {
- SeedArray[49] -= SeedArray[1 + (49 + 30) % 55];
- if (SeedArray[49] < 0)
- SeedArray[49] += MBIG;
- }
- {
- SeedArray[50] -= SeedArray[1 + (50 + 30) % 55];
- if (SeedArray[50] < 0)
- SeedArray[50] += MBIG;
- }
- {
- SeedArray[51] -= SeedArray[1 + (51 + 30) % 55];
- if (SeedArray[51] < 0)
- SeedArray[51] += MBIG;
- }
- {
- SeedArray[52] -= SeedArray[1 + (52 + 30) % 55];
- if (SeedArray[52] < 0)
- SeedArray[52] += MBIG;
- }
- {
- SeedArray[53] -= SeedArray[1 + (53 + 30) % 55];
- if (SeedArray[53] < 0)
- SeedArray[53] += MBIG;
- }
- {
- SeedArray[54] -= SeedArray[1 + (54 + 30) % 55];
- if (SeedArray[54] < 0)
- SeedArray[54] += MBIG;
- }
- {
- SeedArray[55] -= SeedArray[1 + (55 + 30) % 55];
- if (SeedArray[55] < 0)
- SeedArray[55] += MBIG;
- }
- inext = 0;
- inextp = 21;
- Seed = 1;
- }
- {
- int retVal;
- int locINext = inext;
- int locINextp = inextp;
- if (++locINext >= 56)
- locINext = 1;
- if (++locINextp >= 56)
- locINextp = 1;
- retVal = SeedArray[locINext] - SeedArray[locINextp];
- if (retVal == MBIG)
- retVal--;
- if (retVal < 0)
- retVal += MBIG;
- SeedArray[locINext] = retVal;
- inext = locINext;
- inextp = locINextp;
- return retVal;
- }
- }
- int main(int argc, const char *argv[])
- {
- for (unsigned int i = 0; i <= INT_MAX; i++)
- if (Rand(i) == 6502)
- cout << i << endl;
- return 0;
- }
Add Comment
Please, Sign In to add comment