Statistics

Problem Statement for "SmallRectangles"

Problem Statement

We are given two int[]s A and B, with AL and BL elements, respectively. These describe how to cut a rectangle

The whole rectangle has dimensions sum(A) times sum(B). It is cut into AL times BL smaller rectangles by making AL-1 cuts orthogonal to the side of length sum(A) and BL-1 cuts orthogonal to the other side.

The elements of A are the lengths of the segments into which the cuts divide the side of length sum(A). Similarly, the elements of B are the lengths of the segments into which the other side of the rectangle is divided. Hence, A and B are the side lengths of the smaller rectangles that are produced by cutting the large one into pieces.


For example, if A = {2, 2} and B = {3, 4, 3}, we have a 4x10 rectangle that is cut into four 2x3 and two 2x4 rectangles as follows:


   +---+---+---+---+---+---+---+---+---+---+
   |           |               |           |
 2 +   +   +   +   +   +   +   +   +   +   +
   |           |               |           |
   +---+---+---+---+---+---+---+---+---+---+
   |           |               |           |
 2 +   +   +   +   +   +   +   +   +   +   +
   |           |               |           |
   +---+---+---+---+---+---+---+---+---+---+
         3             4             3

Two small rectangles are the same if one of them can be rotated to obtain the other. For example, 2x3 and 3x2 is the same rectangle.

Given A and B, return the number of distinct types of small rectangles produced by cutting the large rectangle.


In order to keep the input small, the arrays A and B are pseudorandom. Please use the following pseudocode to generate them.


function generate_array(prefix, L, M):
    # note that this function accesses and modifies the global variable "state"
    new_array = an array of length L
    P = length(prefix)
    for i = 0 to P-1:
        new_array[i] = prefix[i]
    for i = P to L-1:
        state = (state * 1103515245 + 12345) modulo 2^31
        new_array[i] = 1 + (state modulo M)
    return new_array

state = seed
A = generate_array(Aprefix, AL, AM)
B = generate_array(Bprefix, BL, BM)

Definition

Class:
SmallRectangles
Method:
count
Parameters:
int[], int[], int, int, int, int, int
Returns:
long
Method signature:
long count(int[] Aprefix, int[] Bprefix, int AL, int BL, int AM, int BM, int seed)
(be sure your method is public)

Notes

  • The pseudocode guarantees that all elements of A will be between 1 and AM, inclusive, and all elements of B will be between 1 and BM, inclusive.
  • Watch out for integer overflow when generating the arrays A and B. We recommend using 64-bit integer variables when implementing the pseudocode.
  • The reference solution does not depend on the input being pseudorandom. It would correctly solve any input of the given size.

Constraints

  • AL will be between 1 and 200,000, inclusive.
  • AM will be between 1 and 10^9, inclusive.
  • Aprefix will have between 0 and min(AL, 200) elements, inclusive.
  • Each element of Aprefix will be between 1 and AM, inclusive.
  • BL, BM, and Bprefix will satisfy the same constraints as AL, AM, and Aprefix, respectively. (In particular, Bprefix will have at most min(BL, 200) elements.)
  • seed will be between 0 and 2^31 - 1, inclusive.

Examples

  1. {2, 2}

    {3, 4, 3}

    2

    3

    1000

    1000

    0

    Returns: 2

    The example from the problem statement: A = {2, 2} and B = {3, 4, 3}. There are two rectangle types: 2x3 and 2x4.

  2. {2, 3}

    {2, 3}

    2

    2

    1000

    1000

    0

    Returns: 3

    Here, A = B = {2, 3}. The cut rectangle looks as follows: +---+---+---+---+---+ | | | 2 + + + + + + | | | +---+---+---+---+---+ | | | + + + + + + 3 | | | + + + + + + | | | +---+---+---+---+---+ 2 3 There are four small rectangles, but two of them (2x3 and 3x2) look the same, so there are only three distinct rectangle types.

  3. {4}

    {7, 3}

    5

    7

    10

    20

    47

    Returns: 28

    By following the given pseudocode you should generate the following arrays: A = { 4, 9, 6, 9, 2 } B = { 7, 3, 9, 14, 11, 8, 17 } (You can use this example to test whether you implemented the pseudocode to generate A and B correctly.)

  4. {}

    {}

    51000

    45000

    999999973

    999999978

    4247

    Returns: 2295000000

    In this example the 51000*45000 small rectangles are all mutually distinct. (Note that the correct answer for this test case overflows a signed 32-bit integer.)

  5. {1,2,3,4,5}

    {6,7,8,9,10}

    200000

    200000

    123456789

    987654332

    2352352

    Returns: 39966001261

  6. {}

    {}

    1

    1

    100

    100

    100

    Returns: 1

    We have A = {98} and B = {11}. Thus, the original rectangle has dimensions 98 x 11. As AL = BL = 1, there are no cuts and the result is that there is exactly one small rectangle: the original 98 x 11 rectangle.

  7. {}

    {}

    12

    34

    3

    3

    13124

    Returns: 6

    The six distinct rectangle types here are the 1x1, 1x2, 1x3, 2x2, 2x3, and 3x3 rectangle. (Some of the pieces are 2x1, 3x1, and 3x2 rectangles but those can be rotated to produce rectangles we already listed.)

  8. {1, 1}

    {1176389}

    7

    2

    1

    1945526

    1607036031

    Returns: 2

  9. {}

    {11730769}

    6050

    5

    2507971

    14823990

    1438208187

    Returns: 30205

  10. {4059634, 2618980, 4720590, 6540299, 3317509, 2183083, 6125455, 4357036, 1853355, 5086390, 955762, 5263073, 1737166, 3186558, 4071821, 2123482, 5062694, 4681205, 1251600, 3723589, 127425, 1428544, 4588507, 5260974, 6387675, 694375, 625831, 2229272, 4288549, 5222024, 4587433, 3997257, 6562710, 3654187, 3066696, 6368453, 278348, 5098517, 2223094, 5404712, 5105596, 4336629, 5654847, 3957830, 5940694, 5354651, 2642354, 186508, 4839563, 2038596, 1773056, 2902160, 3620838, 5803145, 1543639, 1482078, 3940909, 1666619, 1072705, 825588, 1146387, 6127203, 6585925, 4778330, 2886143, 4424162, 3291360, 906684, 2238628, 3723877, 3791, 5474619, 1026563, 3473472, 563417, 3097482, 173826, 2216672, 349849, 1178083, 1519842, 6200400, 4292099, 4118667, 1687356, 6568982, 6483331, 4149801, 4431491, 3804998, 4727866, 4759168}

    {11477, 9868, 35616}

    15909

    234

    6596116

    49911

    1453170456

    Returns: 3718962

  11. {}

    {36, 38, 49, 18}

    5

    14

    133

    51

    346617440

    Returns: 70

  12. {1, 2, 2, 1, 2, 1, 3, 1}

    {}

    9

    19

    3

    25

    1188790660

    Returns: 33

  13. {}

    {94, 81, 12, 121, 14, 66, 104, 40, 52, 123, 43, 69, 108, 47, 109, 14, 105, 120, 12, 110, 80, 96, 55, 47, 7, 45, 75, 111, 8, 119, 51, 82, 104, 35, 33, 27, 38, 27, 60, 109, 85, 106, 105, 123, 39, 57, 120, 100, 57, 41, 111, 87, 8, 20, 75, 62, 1, 4, 55, 111, 59, 67, 57, 79, 105, 111, 33, 38, 14, 39, 16, 120, 22, 55, 44, 64, 55, 123, 31, 65, 73, 66, 34, 41, 72, 3, 118, 78, 87, 112, 49, 110, 124, 117, 77, 76, 90, 77, 89, 80, 118, 60, 79, 72, 23, 88}

    2

    128802

    19074554

    125

    1619264208

    Returns: 250

  14. {}

    {78153606, 601501272}

    5

    2367

    11

    725753527

    1671227102

    Returns: 11835

  15. {}

    {1620, 2149, 2072, 1342, 1772, 3068, 3742, 806, 1296, 1627, 3473, 306, 543, 3885, 2920, 3980, 1998, 1365, 2663, 2660, 430, 1035, 1989, 3240, 3992, 380, 1463, 3973, 122, 1617, 2559, 4081, 334, 2464, 919, 2113, 2639, 864, 2080}

    1

    58

    81102786

    4090

    1106723769

    Returns: 58

  16. {}

    {}

    12

    4047

    59268

    49341891

    276132858

    Returns: 48552

  17. {}

    {27, 19, 36, 15, 23, 6, 21, 7, 3, 13, 36, 9, 22, 6, 21, 28, 33, 35, 37, 23, 34, 34, 28, 29, 28, 27, 32, 2, 13, 21, 4, 39, 28, 7, 29, 38, 8, 7, 22, 28, 4, 22, 12, 27, 31, 34, 31, 34, 8, 15, 13, 2, 35, 32, 21, 10, 11, 19, 5, 4, 39, 20, 3, 40, 1, 17, 23, 13, 36, 14, 24, 24, 9, 13, 29, 40, 3, 20, 39, 20, 27, 8, 28, 27, 23, 32, 17, 3, 37, 32}

    1240

    44775

    41

    40

    986661569

    Returns: 860

  18. {}

    {7, 8, 14, 16, 7}

    8

    54

    3947723

    18

    1274375336

    Returns: 128

  19. {}

    {}

    1

    1

    14297

    3776820

    32134090

    Returns: 1

  20. {3, 4, 3, 1, 1, 3, 3, 1, 4, 4, 4, 3, 1, 3, 4, 3, 1, 4, 4, 2, 3, 1, 1, 2, 2}

    {2895866, 255562, 14191518, 14349008, 13967486, 23725931, 14194748, 19404953, 24613782, 4280891, 5167010, 25942816, 24214612, 24826210, 31891067, 24882140, 28592516, 12606779, 18082169, 21521393, 30421347, 15437698, 8812754, 21486929, 27688542, 21521255, 4951401, 2519368, 1329477, 19792190, 8102519, 27284214, 24528015, 19722258, 4303933, 2365740, 30457964, 588276, 4596108, 4115110, 17398017, 26167822, 4270908, 20540109, 28664169, 31250504, 31713348, 9801776, 19124297, 20222805, 29542298, 14036406, 18366569, 25012873, 32334590, 16376851, 20550972, 28650932, 19493278, 29212747, 787186, 5617183, 26235988, 27007691, 20058515, 18185327, 19403271, 27639165, 21251015, 24299684, 4894217, 31204718, 7758727, 28473039, 3935372, 5083954, 30060170, 30473619, 9567710, 20694148, 16251367, 30114478, 27075533, 21823747, 16443421, 15455972, 27652132, 28653190, 20301159, 10375514, 13747915, 25294630, 31069305, 32137849, 15089730, 20319457, 6156622, 429273, 14359517, 27131807, 26442920, 31349834, 29266094, 16352928, 16429458, 24563406, 13691498, 11525362, 12580901, 18647039, 10129731, 26834073, 30109783, 10311265, 13236316, 27923664, 27775170, 12632244, 1193088, 20929206, 25602255, 17661238, 9016896, 4752742, 15682235, 13166121, 3400488, 28046227, 29594892, 25873760, 22129424, 3611945, 19891526, 1139078, 12340307, 31469375, 21424630, 27538889, 29893467, 11415237, 22274910, 22740781, 19183703, 25212430}

    66

    8247

    4

    32347735

    633475780

    Returns: 32984

  21. {211}

    {81454, 30215, 36983, 87068, 32204, 60380}

    1

    7

    784

    108890

    1464275582

    Returns: 7

  22. {168, 1498, 1559, 705, 2008, 2494, 2974, 698, 792, 1650, 2743, 220, 1921, 1339, 2247, 2210, 306, 1061, 391, 568, 2741, 2111, 2374, 2737, 854, 1122, 2447, 1596, 455, 1047, 2265, 1466, 490, 1540, 1525, 2660, 2184, 922, 1192, 1028, 2493, 2773, 2864, 2665, 1315, 2334, 157, 2533, 850, 1214, 1828, 1333, 468, 600, 2425, 750, 1067, 1406, 1123, 388, 1207, 852, 156, 1109, 2512, 2666, 890, 813, 2798, 2017, 2029, 318, 1564, 2659, 96, 2681, 2429, 615, 436, 1718, 1233, 903, 1696, 778, 353, 878, 2631, 2599, 2722, 916, 2245, 366, 2276, 1718, 1266, 1292, 1532, 487, 374, 2835, 1288, 1863, 868, 482, 2676, 355, 2195, 2722, 1396, 2322, 2822, 1984, 897, 244, 1307, 1264, 2733, 1553, 1085, 2425, 244, 311, 1049, 1873, 2065, 903, 2101, 2094, 1988, 1161, 1305, 1788, 2115, 1020, 2499, 2787, 2878, 2632, 1346, 2337, 2598, 860, 2342, 727, 776, 981, 171, 121, 2847, 2491, 2088, 2481, 1068, 2495, 1208, 814, 1407, 2425, 2477, 2581, 2291, 1380, 2066, 712}

    {}

    881

    165

    2979

    1480476

    793729814

    Returns: 125895

  23. {53036515, 42910847, 46718085, 33038866, 54358405, 42104181, 57613406, 18151546, 22399903, 18943024, 46660723, 14562132, 55034310, 55432072, 60816802, 46931073, 57049103, 54342144, 28688065, 5065185, 17141687, 41063920, 25672764, 21713850, 30850560, 19591309, 10809465, 16243986, 12239686, 24338271, 15450437, 61980420, 20735988, 2434039, 14535423, 46329726, 38563642, 31787090, 1654501, 23860713, 619429, 42302006, 19084926, 18377245, 37103756, 27903725, 50845195, 35540234, 61889626, 15842279, 30474474, 30484386, 3550406, 55083957, 61216282, 5550892, 48387292, 8732885, 49260374, 27004457, 29745309, 12562301, 16634877, 3080747, 26959364, 45144275, 30343693, 35713631, 35156373, 6691834, 37439304, 1778095, 36542140, 30088253, 36270065, 32580733, 56464385, 39522225, 10821234, 10638874, 52882059, 50830530, 63718802, 15997564, 18495938, 45061585, 21374547, 12996496, 37397060, 64691676, 45315842, 57183597, 33089633, 34134487, 53746211, 49833430, 18437515, 30855253, 17138416, 22616379, 35238946, 7820051, 64405749, 14821355, 51079308, 17061389, 52647218, 63657037, 15166206, 2193560, 52452727, 9254097, 16410719, 46235878, 49453818, 59098733, 62117301, 47823998, 62757810, 30058082, 49383320, 47931566, 58386772, 52161470, 5688898, 21751155, 48879149, 36750673, 49537130, 43369946, 43999752, 64655981, 63896704, 14499602, 21710724, 64226944, 42061740, 6313789, 53164080, 17464804, 34797224, 10541133, 18655567, 24215850, 9363239, 50230990, 11047978, 5283747, 58503761, 12365337, 54578355, 3744300, 57238606, 51888231, 34168463, 12049833, 40524297, 61423637, 61508131, 43409281}

    {}

    2034

    17

    64707523

    426422112

    180261467

    Returns: 34578

  24. {638134, 327662, 269322, 705765, 476437, 27568, 324076, 197653, 26670, 451699, 182746, 281764, 510567, 197862, 470306, 13478, 387486, 666945, 259377, 420932, 531892, 187765, 184944, 187705, 632307, 52624, 225588, 330464, 639609, 422148, 687272, 314454, 280634, 656186, 97346, 317477, 241253, 45589, 587891, 494159, 320909, 247402, 310155, 478652, 187830, 185400}

    {}

    60

    156928

    729134

    380

    1976340918

    Returns: 22800

  25. {35572503, 37596771, 27753495, 46421260, 29861152, 36223170, 54594260}

    {}

    12

    4

    62074798

    899

    1720674880

    Returns: 48

  26. {22090, 25993, 34828, 19850, 46726, 12978, 16620, 4435, 44477, 3318, 15920, 11444, 40003, 23107, 22693, 5479, 44854, 32715, 17099, 18390, 39160, 24118, 13394, 3143, 17069, 31933, 15256, 43550, 7168, 34613, 20032, 12097, 26004, 18428, 38780, 46716, 13214, 34607, 18368, 10515, 10581, 20979, 10043, 18234, 31594, 6470, 18724, 45490, 17132, 9897, 25628, 44202, 14376, 14537, 11673, 5652, 19010, 33872, 9552, 30483, 19347, 2070, 6986, 44545, 36367, 14476, 13588, 6967, 12907, 32729, 25118, 19821, 46964, 16735, 798, 21982, 23618, 27524, 6337, 5764, 21600, 17044, 34952, 15188, 38079, 47146, 45226, 9027, 16119, 44135, 32590, 36102, 45749, 41428, 13150, 2236, 10992, 1554, 37314, 20562, 14913, 44963, 24038, 15013, 16036, 32024, 24281, 13224, 27832, 12219, 30383, 39031, 40299, 14580, 2331, 26654, 30549, 15194, 27757, 1192, 27707, 40516, 33598, 4322, 32153, 12673, 25615, 12290, 47481, 135, 15702, 32260, 34066, 770, 36080, 19372, 31416, 20595, 20081}

    {}

    224

    59

    48213

    1

    955318938

    Returns: 223

  27. {}

    {46733402, 35176079, 22794236, 36624215, 49890976, 7183632, 51368841, 40913795, 24284001, 56221314, 34218372, 58240468, 25891608, 17580920, 10261326, 59456648, 3543054, 14436228, 3543172, 37785179, 17564365, 46191737, 17350936, 11828125, 25117133, 59378754, 41166737, 25072391, 15500713, 38285273, 38843470, 37160524, 54513761, 58125424, 8945475, 15826595, 7120035, 59543934, 9016643, 24122732, 57727277, 3447846, 9738990, 49174330, 11717569, 26181141, 51662462, 56285730, 51575347, 46538193, 44584545, 18157798, 35046262, 4218390, 41849272, 49121917, 35724390, 10332785, 60344509, 16165080, 21621808, 30499537, 57468616, 34789562, 49512139, 47588457, 17627158, 6321787, 23532091, 51226958, 17217412, 634698, 42364870, 37119790, 18731186, 35802049, 17959598, 31201117, 35201253, 41158665, 31338654, 59037682, 10103802, 24393600, 9055975, 45034052, 57600202, 13953365, 1322541, 6591794, 3633712, 25797681}

    11

    16240

    536003762

    60541925

    2121260474

    Returns: 178640

  28. {46119665, 53180341, 89261647, 502701, 140481671, 53685270, 147217213, 120212617, 43911094, 78275968, 140048179, 116633890, 126795116, 148816385, 117052245, 5761119, 44776058, 114948855, 107070802, 8663244, 13264725, 16263371, 27339400, 55713210, 129412933, 50543655, 148044577, 8604540, 143247757, 32254438, 4435600, 89059211, 69468113, 128743371, 74690789, 26456921, 31408035, 96315050, 129734961, 2429074, 74747001, 123511844, 119724169, 49830675, 33090259, 69450175, 98962974, 125049434, 14470025, 132070662, 8797075, 114315782, 21987571, 56383471, 99509913, 52658893, 61865449, 38441955, 55280319, 133001141, 137987905, 28633062, 78008098, 145060019, 26692650, 131535871, 52121533, 10145115, 40321960, 135883207, 69387179, 39770685, 75295459, 100130988, 39423770, 89310050, 142760237, 99403565, 34113190, 38488330, 114957203, 109181239, 85258749, 48266935, 100688995, 5086094, 28080558, 113946381, 44775270, 17451126, 27056693, 34854995, 27717808, 20520432, 58507799, 7692735, 48562180, 103807805, 25905467, 17195150, 129258879, 4684701, 32937507, 46396724, 89593800, 35137880, 35323470, 74819796, 60166514, 37226312, 13807386, 104111088, 42616927, 112511968, 148649152, 7836502, 19493681, 65521677, 135256806, 114528522, 136459979, 16993816, 95068068, 65174609, 95748127, 71507656, 50550297, 11870941, 82030009, 11956886, 47583135, 15879063, 140514089, 83557698, 82613424, 117289436, 91332640, 12644271, 98671423, 67551101, 49139591, 139658429, 43897468, 51140842, 6472859, 142945223, 125000997, 61736279, 69688390, 112091452, 128897162, 1438176, 14019115, 91574740, 109249873, 24910356, 20358855, 91780284, 56027034, 69712818, 91809722, 32401887, 40801973, 120966774}

    {}

    10777

    3024

    149527997

    682606008

    868517388

    Returns: 32589648

  29. {}

    {}

    101496

    4384

    1141831

    37186

    1895013047

    Returns: 402094754

  30. {}

    {98051}

    305

    1

    283139

    114596

    1104133540

    Returns: 305

  31. {}

    {}

    62

    98197

    35789

    1092

    2124614898

    Returns: 67704

  32. {}

    {478733, 1112139}

    46659

    12

    8821

    1623142

    770102422

    Returns: 105348

  33. {}

    {295298, 224371, 713833, 723706, 353240, 422982, 861897, 829344, 864620, 732774, 389981, 718289, 775225, 870306, 221890, 143375, 799438, 372103, 538880, 30396, 486814, 155335, 572465, 368901, 934095, 414879, 93800, 90237, 77295, 582095, 440058, 903020, 820378, 829189, 528781, 898200, 161598, 701982, 194203, 854997, 176531, 475062, 72683, 223943, 384249, 707474, 401459, 201910, 521837, 734241, 73907, 658491, 584627, 520643, 208158, 58925, 21003, 338833, 589458, 204083, 399087, 13301, 145294, 583092, 702921, 412128, 385597, 243177, 114079, 261990, 209250, 405474, 270195, 617701, 483355, 850947, 765720, 819270, 900138, 415504, 441420, 507182, 36188, 173838, 162713}

    2503

    132907

    2083

    953894

    832283310

    Returns: 178643114

  34. {}

    {3, 1}

    560

    5

    2783

    8

    1475271704

    Returns: 2545

  35. {111951580, 99374903, 6728936, 2298648, 123158665, 54713414, 81250491, 45051781, 74937913, 82135366, 111502592, 49366597, 86219249, 27156524, 98824855, 59803040, 56547786, 122811741, 119156201, 50248564, 60569597, 73798489, 6451962, 25699445, 106040851, 12875131, 97799214, 16470029, 117564533, 10455738, 28534695, 68649768, 91641464, 56626291, 98651652, 2708606, 92963349, 59507228, 56707083, 52565559, 49768741, 90632196, 62980806, 104201004, 16088649, 31134337, 34682624, 136438063, 112513220, 87610121, 97601633, 120436843, 130462711, 123902228, 133151221, 45415481, 9759174, 111940737, 136266372, 124725233, 86578067, 99478265, 116283794, 45758242, 61548729, 133267893, 110406455, 12462487, 94344141, 81689856, 66073447, 125979038, 65662650, 54772419, 24673434, 133847094, 101241688, 58283461, 133651752, 6335066, 86072640, 66725189, 51978229, 88714994, 60144434, 4672700, 105978141, 10896414, 136956086, 89747406, 87818261, 92763587, 137141452, 123347771, 9386392, 49566721, 25368904, 55566089, 16960102, 67224762, 71438052, 102657696, 7486939, 26319842, 136354346, 97596126, 112053992, 70034538, 94834449, 71824385, 39236519, 133448295, 34191834, 40886126, 83070365, 75911553, 12416889, 116793853, 97812920, 104086440, 118123187, 224056, 69716429, 76022628, 128875807, 68309654}

    {}

    105112

    1351

    137746420

    348

    682744443

    Returns: 35937702

  36. {33326, 134788, 278954, 734206, 331296, 427410, 93603, 226448, 651204, 592183, 300359, 211293, 356118, 105844, 565631, 225925, 843667, 809614, 506280, 816684, 863753, 192626, 73009, 516204, 52578, 212336, 902988, 65699, 378976, 36963, 462181, 70279, 808247, 756700, 728518, 587730, 66552, 504678, 851569, 807286, 757642, 222058, 167623, 68439, 179224, 69652, 893168, 200478, 221236, 193029, 603634, 826662, 784332, 691289, 225747, 414401, 784596, 580118, 492269, 422630, 40074, 836493, 565775, 177913, 204768, 812490, 588108, 639419, 55965, 702731, 356999, 97131, 283776, 530776, 484638, 844858, 465521, 895539, 426359, 236059, 509309, 218812, 271928, 652544, 535901, 178827, 690511, 815241, 857566, 847213, 406399, 317806, 604279, 846814, 653981, 181956, 755824, 607564, 168030, 322790, 32581, 44248, 795892, 565075, 566472, 675133, 743455, 199973, 207570, 617298, 86535, 673653, 457584, 884190, 584415, 231034, 580619, 4869, 536965, 160489, 256701, 741652, 491495, 458452, 93004, 540219, 796772, 808520, 815031, 551783, 54840, 851462, 647420, 632141, 824061, 176033, 696093, 769728, 401433, 301860, 359882, 314781, 855299, 419431, 520476, 92988, 311558, 298312}

    {}

    7336

    12

    908071

    38348

    513239071

    Returns: 87636

  37. {357327, 424430, 53413, 192762, 111324, 146270, 474157, 440078, 254457, 476041, 383281, 151058, 314854, 192680, 377589, 445332, 472166, 165448, 109904, 98581, 112391, 449837, 472694, 98096, 448064, 85580, 109177, 251855, 194640, 312522, 159277, 82588, 436266, 209850, 350037, 167674, 308101, 447995, 200805, 60355, 427617, 61928, 220627, 479189, 377415, 3686, 12726, 104710, 203871, 89524, 353887, 369015, 353829, 353834, 344197, 253226, 64445, 20383, 124364, 346740, 10601, 109611, 40955, 441918, 223393, 215591, 362291, 454970, 104216, 115966, 303947, 431462, 72063, 248210, 293987, 235593, 408319, 40603, 83683, 467009, 413635, 162553, 41254, 348062, 461086, 226791, 356673, 306063, 410076, 210562, 151099, 448752, 274094, 93508, 75761, 358263, 114641, 185478, 271624, 194310, 134005, 40542, 73146, 286584, 350206, 453705, 459100, 42847, 130784, 315682, 160424, 192492, 240306, 377386, 455760, 331495, 86049, 338603, 265850, 231586, 317875, 228757, 51525, 84008, 369647, 392019, 289051, 20907, 76721, 249761, 412121, 469382, 311660, 162330, 424763, 441481, 320695, 356468, 213668, 242578, 265713, 214894, 346241, 273842, 265745, 217126, 262951, 477461, 452516, 480816, 120641, 266119, 453532, 141302, 92019, 223355, 316377, 58684, 61633, 380626, 402082, 397112, 164832, 197594, 99022, 117180}

    {624026}

    4427

    1

    485606

    2642778

    282310956

    Returns: 4401

  38. {7601367, 7291340, 12020087, 386286, 11989055, 12087772, 12972103, 9273928, 610535, 264233, 11725652, 855678, 10170074, 1978668, 681785, 1745120, 9156632, 1877348, 9001508, 4088836, 240775, 9101444, 2406077, 5060786, 8487024, 8038112, 47173, 1382221, 13970755, 8401688, 10044549, 9134264, 10390471, 13411456, 9623294, 4454619, 12991207, 7960201, 3120764, 3613053, 3664838, 13540131, 5588172, 14210396, 11675641, 12915712, 1419815, 11262451, 9993356, 9779642, 8356937, 1857551, 340629, 7824968, 11472887, 7463161, 469237, 705632, 8379929, 7708391, 3473291, 12582316, 12910183, 1966211, 9728424, 6731136, 5432440, 7121798, 6051284, 13373212, 12363186, 13050496, 2670288, 4929001, 6949761, 12945812, 11259292, 8105673, 9539694, 4161686, 4966043, 7629128, 5618750, 13561205, 6465092, 8849481, 5239079, 13724921, 7280341, 10276796, 12657771, 5526524, 7431817, 51719, 2511390, 12286446, 4143752, 10294691, 6012976, 3726320, 1991275, 5136340, 13256579, 1354718, 12691735, 11653186, 8111988, 5473186, 1667484, 5454356, 58351, 6665398, 3362255, 12883859, 8844733, 4579709, 9058748, 4142194, 2337470, 12332500, 13330708, 10746906, 541496, 981817, 5167523, 2126084, 10208754, 8378459, 13255721, 8764618, 5028302, 1670469, 8333576, 7235662, 3268391, 12317859, 7026359, 1891689, 6102731, 10506032, 6569971, 7777756, 13376261, 3097293, 4661638, 13083019, 4797413, 566445, 9895706, 9742870, 11495473, 4817487, 4064818, 541195, 4887225, 5703084, 405752, 8227649, 9557249, 6444754, 11654377, 11190428, 4641800, 10787279, 7055467, 10119467, 2955884, 11209352, 1860981, 9936920, 95096, 6473036, 10887351, 9002246, 12829152, 9352342, 6265877, 12284250, 1510197, 9335660, 11113135, 11573443, 3369819, 9505924}

    {65025560, 161802405, 94569715, 146435980, 128421255, 171511681, 208458377, 107042994, 99898838, 113259299, 77360345, 105909747, 45178596, 48536027, 55259958, 133643031, 95865160, 145237000, 166153631, 68757476, 112899417, 204318579, 96280884, 102014597, 70716988, 45045611, 105911621, 14516410, 159801469, 205122692, 11919559, 103770718, 144662052, 118321088, 87195126, 9702050, 73971895, 192370209, 179591632, 209627807, 102955844, 104246837, 60732766, 104032346, 60566013, 99362060, 6627956, 33510316, 78769159, 33269656, 143725042, 165580977, 190038352, 30842041, 192041349, 110870582, 168266655, 173643265, 106504281, 69127403, 99141050, 102499298, 97657285, 13992048, 92205412, 207699957, 183867059, 114750297, 45238988, 175121247, 134523293, 43704577, 112223720, 190058317, 189096472, 206985790, 7361163, 67748489, 69349291, 92903540, 185229574, 15750332, 191883035, 151493683, 195340402, 130403823, 63166434, 165362714, 27216163, 83735556, 179978656, 150449895, 202954678, 19240507, 114867210, 130583519, 147858503, 141642096, 101989662, 94828865, 136957849, 51994877, 170574082, 154219481, 123742918, 55503244, 101981962, 129015569, 91655130, 66477881, 104374463, 75001054, 146868942}

    159701

    47208

    14311823

    209750653

    1703679357

    Returns: 7498525890

  39. {1925896, 7519136, 5582276, 7790182, 4011131, 7210431, 127842, 4717007, 7452409, 6548442, 5458329, 2633760, 6087816, 5403799, 6247517, 5893730, 3931224, 5587907, 4337685, 6850367, 537181, 3212295, 4802093, 1008414, 2887908, 6622796, 1358055, 4539840, 7940195, 1844012, 926127, 869959, 2521467, 4807568, 2873700, 7898701, 6466278, 1418185, 4189934, 8316147, 5282354, 7195083, 3747968, 3794291, 4934465, 5057346, 1984709, 2549076, 8142807, 1179029, 3301109, 6700722, 8097435, 7101900, 3544156, 4337200, 4233164, 759833, 6422428, 6348444, 4732205, 2860639, 245414, 6936180, 5252742, 1210789, 3019289, 4248784, 6996365, 2879462, 2564649}

    {1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1}

    99551

    26040

    8425991

    1

    1465214461

    Returns: 99016

  40. {}

    {1, 2, 3, 3, 3, 3, 2, 1, 2, 3, 1, 1, 1, 2, 1, 3, 1, 3, 2, 1, 3, 1, 1, 1, 3, 1, 2, 2, 3, 3, 1, 3, 2, 3, 2, 1, 3, 2, 2, 2, 1, 1, 3, 1, 2, 3, 2, 3, 3, 1, 1, 2, 3, 1, 1, 1, 3, 3, 3, 1, 2, 1, 2, 2, 3, 3, 2, 1, 2, 2, 3, 1, 1, 2, 1, 1, 1, 1, 1, 2, 3, 2, 1, 2, 2, 3, 2, 3, 1, 2, 3, 2, 2, 3, 2}

    76655

    102776

    19

    3

    290954564

    Returns: 54

  41. {960571, 355478, 114060, 3913273, 8489664, 5113108, 9735645, 4573371, 11314268, 1754308, 351314, 3400678, 8878083, 7663697, 10917161, 3953774, 3973661, 6482067, 7052257, 10953858, 5997874, 5872815, 8856839, 4690575, 7536317, 4262869, 5179050, 4257811, 9652932, 11159459, 2984951, 10807271, 5017965, 3891620, 9080143, 9958445, 8688085, 761432, 4615977, 2543733, 9187870, 8577581, 5396179, 683185, 7492588, 1394715, 158727, 9447913, 1113500, 4852837, 4047769, 11191689, 3462717, 3900029, 1906409, 1428403, 5644784, 3007901, 8598480, 8690732, 11015690, 4604158, 2748429, 4484937, 7012825, 1439872, 6613333, 7049936, 4935591, 1791390, 1267008, 421519, 3356599, 9275536, 10220378, 3028536, 8529137, 8192695, 6016353, 9432380, 5925349, 5436043, 7270580, 30538, 4301192, 1029759, 5693717, 10205878, 555262, 680749, 1729826, 6898683, 5084830}

    {}

    149882

    122163

    11362457

    9287788

    1697770609

    Returns: 18067273425

  42. {}

    {}

    101519

    66746

    343197

    381693

    1979389382

    Returns: 5282235665

  43. {}

    {}

    121277

    118209

    880488984

    6727

    389820672

    Returns: 815790017

  44. {21010219, 12330259, 13379542, 28874876, 28851273, 9076747, 32086108, 3209524, 18858784, 25228491, 18276408, 20808094, 14965943, 4522632, 19799212, 15790397, 5218017, 23304799, 21774038, 26052855, 18671184, 11815113, 1682187, 9824730, 16523822, 29233400, 16504641, 5401275, 25447595, 19486947, 4501586, 15775072, 24443275, 25548464, 31544287, 1196551, 8135812, 17828656, 24940034, 13171132, 20116675, 25685711, 9536709, 9092848, 1477993, 15020674, 1732648, 31877674, 9375523, 28028927, 3445044, 26395941, 18220107, 5358388, 22574565, 20607545, 32138278, 32211770, 18582974, 753039, 11513283, 15317171, 30906545, 15352873, 6874363, 14997528, 1326180, 13827653, 14424449, 29967085, 704367, 9050018, 7727525, 11409452, 10536337, 5288296, 20235340, 16391652, 30070884, 17672294, 14169075, 19470357, 22735083, 10025941, 10780648, 20352623, 11672721, 30526098, 27311452, 17540073, 19676451}

    {}

    25362

    193572

    32599700

    31853658

    2122512069

    Returns: 4892473383

  45. {}

    {}

    74228

    19166

    355410089

    6218

    751603398

    Returns: 441318066

  46. {}

    {}

    32074

    54832

    1336508

    44425169

    959517799

    Returns: 1735873254

  47. {1423, 543, 524, 1240, 1473, 1540, 208, 882, 657, 377, 1666, 154, 475, 258, 326, 1500, 471, 66, 1075, 1539, 10, 676, 1180, 1577, 115, 266, 180, 561, 64, 1294, 111, 749, 14, 1492, 1183, 548, 601, 8, 356, 941, 430, 492, 647, 788, 1560, 634, 1551, 249, 1568, 213, 164, 923, 25, 361, 600, 383, 174, 1373, 1197, 1118, 692, 167, 1444, 1007, 907, 506, 1006, 534}

    {}

    80488

    25559

    1672

    241

    1317750407

    Returns: 374032

  48. {13717258, 16311663, 5668549, 3297282, 2774314, 3310701, 17880930, 19575605, 21814327, 14754042, 11655384, 734049, 17584764, 24322284, 9424024, 19182173, 18426486, 25851662, 17290387, 18721282, 6128921, 16742372, 500200, 15472057, 2286993, 21708834, 8201731, 9036951, 3771464, 12271358, 11439165, 22837729, 9678671, 21547620, 26239817, 15593809, 17694929, 3611910, 16719792, 8174869, 1123897, 459543, 20904816}

    {}

    10929

    7592

    27592768

    5460

    356558959

    Returns: 44636795

  49. {34067789, 16559291, 14162472, 70585337, 96236712, 86284127, 104604788, 36701354, 59055227, 23509183, 75409932, 24494565, 21736328, 62226952, 11017830, 101776570, 69170385, 6486849, 68336508, 47909753, 92211937, 51730218, 6847257, 15413694, 73866349, 50337000, 40680433, 75777249, 65124485, 91518384, 42882700, 85139029, 10737097, 34340678, 49269042, 23179542, 82772980, 12023973, 42218396, 36191589, 24690514, 78120442, 59592608, 4062279, 54778857, 90382888, 54298723, 57075453, 65658657, 71864361, 55140159, 66931583, 28496277, 68349099, 58483163, 100600426, 4537429, 85291557, 57003318, 85319293, 28542053, 154335, 51604696, 60430286, 105970395}

    {}

    6902

    43713

    106021977

    12

    1193515683

    Returns: 82824

  50. {16, 4, 17, 14, 2, 1, 23, 23, 6, 7, 4, 6, 18, 13, 4, 11, 1, 8, 7, 22, 16, 6, 16, 6, 9, 2, 2, 6, 24, 18, 6, 6, 17, 7, 6, 17, 16, 25, 5, 24, 14, 7, 18, 8, 18, 5, 17, 8, 25, 9, 5, 5, 7, 17, 12, 15, 21, 23, 2, 4, 11, 10, 2, 3, 15, 12, 7, 15, 18, 7, 7, 22, 20, 20, 22, 23, 17, 6, 17, 9, 17, 24, 19, 4, 20, 11, 7, 10, 10, 20, 3, 23, 1, 11, 13, 24, 1, 5, 14, 22, 6, 3, 15, 12, 4, 23, 17, 20}

    {}

    92837

    44323

    25

    101

    1025005166

    Returns: 2225

  51. {1, 1, 1, 2, 1, 2, 1, 1, 1, 1, 2, 2, 1, 2, 1, 1, 2, 1, 2, 1, 2, 2, 1, 2, 2, 1, 1, 2, 1, 2, 2, 1, 2, 1, 1, 2, 1, 2, 2, 1, 2, 1, 2, 1, 1, 2, 2, 1, 2, 1, 1, 1, 1, 1, 2, 2, 1, 1, 2, 2, 2, 1, 2, 2, 1, 2, 1, 2, 1, 1, 2, 1, 1, 2, 1, 2, 2, 2, 1, 2, 2, 1, 2, 1, 2, 1, 1, 2, 1, 2, 2, 2, 1, 2, 2, 1, 1, 2, 2, 1, 1, 1, 1, 2, 1, 2, 2, 2, 2, 2, 2, 2, 2, 1, 2, 1, 2, 2, 1, 2, 2, 1, 1, 2, 1, 2, 2, 1, 1, 2, 1, 1, 1, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 1, 2, 2}

    {}

    183913

    92116

    2

    3870972

    56199326

    Returns: 182070

  52. {}

    {}

    92381

    69663

    4156138

    100078

    223878564

    Returns: 4585159792

  53. {}

    {}

    122178

    91070

    17233125

    132764375

    803395426

    Returns: 11083117545

  54. {}

    {}

    179178

    49501

    935132

    78

    1443110598

    Returns: 12705251

  55. {3741, 98, 748, 279, 561, 3832, 1699, 1767, 2183, 2019, 3785, 2113, 1670, 1656, 1816, 3149, 1609, 859, 2067, 3540, 3207, 1460, 1609, 1142, 3586, 801, 2240, 3894, 473, 925, 955, 1947, 3180, 433, 1283, 2305, 454, 2775, 3303, 1433, 1437, 2869, 662, 2524, 4071, 11, 811, 3247, 287, 1794, 3454, 1789, 2214, 3334, 3667, 563, 413, 2076, 3505, 75, 2736, 1134, 1591, 659, 2417, 3183, 3704, 3466, 2662, 1916, 4047, 2431, 1918, 633, 2836, 2272, 119, 2551, 3102, 2961, 1378, 1017, 3813, 3762, 2141, 2947, 2405, 2047, 2554, 1939, 3237, 2603, 3335, 3246, 2004, 1787, 458, 1682, 2054, 2463, 1939, 1112, 3069, 2356, 2984, 3871, 1519, 602, 314, 2464, 2397, 972, 1984, 2069, 882, 614, 2364, 4093, 3122, 1671, 1241, 1608, 1206, 858, 26, 1924, 2715, 1899, 1254, 2832, 902, 1076, 3505, 2793, 2160, 3936, 3586, 3474, 3592, 3759, 2144, 1377, 1832, 1121, 3211, 4118, 1085, 1058, 2491, 627, 1469, 1005, 667, 386, 3914, 3703, 2675, 3141}

    {}

    178103

    48352

    4120

    9

    76695953

    Returns: 37044

  56. {}

    {}

    125871

    90283

    33912984

    73293482

    294893691

    Returns: 11335047157

  57. {}

    {}

    174685

    101879

    18658

    2

    852603235

    Returns: 37309

  58. {293, 11, 98, 291, 172, 104, 8, 178, 74, 146, 381, 390, 243, 366, 386, 25, 305, 409, 114, 315, 109, 290, 323, 223, 402, 89, 107, 165, 240, 11, 258, 94, 310, 206, 472, 70, 151, 233, 405, 125, 423, 84, 127, 213, 393, 249, 282, 459, 432, 419, 438, 66, 88, 378, 459, 199, 77, 409, 103, 160, 125, 389, 373, 164, 381, 343, 98, 130, 202, 455, 127, 384, 127, 239, 473, 204, 70, 41, 75, 193, 207, 240, 204, 65, 236, 425, 98, 265, 195, 343, 381, 208, 395, 347, 169, 226, 85}

    {135458, 245675, 38743, 395490, 101061, 207886, 520943, 557816, 605817, 383423, 643793, 85505, 442453, 187686, 108969, 778720, 712230, 429810, 768697, 190071, 570418, 599797, 603201, 355523, 417693, 331070, 425751, 609102, 535879, 398120, 150545, 673818, 480913, 128054}

    25647

    196686

    482

    781575

    977585700

    Returns: 83659182

  59. {}

    {}

    196906

    165082

    1984

    4778499

    1949110412

    Returns: 321897821

  60. {}

    {}

    179176

    66614

    37204

    2428

    700478312

    Returns: 86729221

  61. {}

    {}

    102101

    132104

    447

    3518558

    111729053

    Returns: 57988727

  62. {}

    {2204258, 3214417, 2398950, 2124563, 1732412, 1410722, 1153095, 122926, 1393875, 2914570, 675184, 405864, 211945, 726962, 1221028, 1374783, 288771, 249613, 1720917, 3431969, 2383121, 2211307, 3123908, 264012, 3347235, 1341828, 3266067, 3105926, 416935, 679874, 1969576, 3294365, 2537136, 121792, 1854550, 1027808, 1723605, 2283049, 2860933, 1112615, 3193949, 1731765, 82005, 2324324, 294314, 2207400, 746069, 1033305, 3109965, 2941598, 3104873, 2839477, 2729378, 3138760, 2519804, 3312382, 1069478, 571303, 516868, 2624551, 2785300, 2146419, 1220723, 530045, 2292742, 1525221, 3099201, 2224562, 2674892, 2448639, 2417716, 2737933, 939638, 1682209, 899330, 977480, 639925, 1840375, 581665, 1129997, 158726, 2089114, 775962, 3124594, 1968833, 2969198, 2627191, 3037068, 2448323, 2087796, 3189644, 2442099, 1162185, 2309266, 3323167, 3303582, 188354, 1464790, 1377343, 1716214, 694128, 1519086, 744258, 2410586, 1694841, 2766389, 991733, 1163050, 2621097, 1898874, 3447910, 2738822, 1665595, 543546, 2565813, 2265340, 733523, 680825, 1974437, 1729256, 1278779, 3212977, 676464, 756060, 2608812, 1842553, 1420245, 1038137, 2630960, 2134849, 322484, 2895387, 1184090, 7561, 1399948, 1004821}

    98989

    90810

    3540214

    3476018

    679915656

    Returns: 8748938447

  63. {80868070, 98012886, 5262806, 8159859, 65299049, 71323761, 9451753, 44346917, 55606854, 30124566, 76693182, 16352822, 91410549, 5048098, 90627454, 19096867, 9665005, 34899759, 17459856, 38450760, 50970194, 57164580, 43708470, 55711701, 79248373, 20563084, 70088233, 95926499, 69833939, 48042359, 95887004, 2090473, 94028147, 49024155, 89691683, 3025588, 96399085}

    {}

    1302

    101828

    99640084

    2

    1195976211

    Returns: 2604

  64. {707862732, 641035384, 748411406, 459722914, 662218241, 478354880, 608441891, 536848439, 710652991, 294537092, 55288046, 107750515, 9764488, 537500900, 660985132, 398922084, 39866291, 335332248, 719171040, 711106424, 217690190, 132528469, 625324318, 635644628, 515622609, 506880176, 552262728, 196336313, 389214294, 211685743, 388277968, 277372287, 171134814, 74287473, 23737001, 276688968, 447868410, 481243273, 71868983, 48062330, 738995642, 310027299, 19242205, 20483061, 557509688, 664081910, 330713764, 2951762, 30731080, 126516688, 578941601, 321172865, 337298087, 392502462, 672873924, 703350536, 650204942, 136192460, 703707330, 274268432, 54931800, 227774794, 465633546, 64808592, 662269693, 292069961, 334159145, 27238529, 181132572, 576921534, 277613373, 143782296, 158972652, 682779640, 427880774, 204664109, 496903765, 353930580, 62265013, 343679024, 607793498, 679750028, 64278220, 706756921, 627971057, 672127847, 247416685, 698106676, 328118017, 39964121, 622256920, 728550964, 231526325, 526623907, 349591741, 393463041, 394735401, 174870053, 42517541, 194691406, 628750926, 264296319, 550472443, 737624452, 685270154, 163054913, 122610685, 703317228}

    {1820406, 2251759, 2450451, 2290868, 1178205, 1223278, 1599332, 2322452, 348199, 1056545, 2307998, 2192640, 1217514, 1555660, 494845, 618715, 1620381, 2116299, 390669, 2326592, 2190936, 700207, 696062, 1272280, 2609070, 1261592, 788480, 1321118, 2299047, 2578028, 2645385, 1520453, 2618210, 1398373, 2405133, 1126663, 1677271, 1359294, 1677843, 2560187, 1410377, 1819737, 949230, 128455, 1328396, 2627622, 1657077, 2119500, 1187625, 2638584, 981479, 1549856, 1478023, 12817, 1818034, 2194440, 1334128, 1930052, 1362613, 193854, 1334108, 2591908, 843487, 1091946, 373836, 478069, 422580, 1017254, 983980, 1629458, 939032, 450391, 2430204, 2517910, 886284, 2268574, 669217, 2305687, 99790, 162554, 1694398, 2487022, 864640, 99806, 939250, 2193699, 984781, 1235978, 272090, 798816, 2043596, 2466743, 1685594, 2639641, 899000, 2370177, 2203162, 1672830, 32519, 2188261, 834242, 2131973, 2490988, 2479472, 932368, 461281}

    172929

    85045

    759240229

    2667583

    1842802733

    Returns: 14477218931

  65. {181456, 280586, 372478, 202877, 414043, 495147, 50752, 591875, 730161, 217264, 708753, 628905, 456147, 97025, 278866, 507525, 722329, 38117, 645960, 501298, 469539, 81877, 698033, 507511, 155528, 433968, 201626, 547637, 490853, 307342, 704749, 326482, 540515, 25896, 290061, 676948, 546381, 153255, 580122, 272895, 161951, 1728, 752240, 707130, 605738, 627170, 146573, 650322, 667935, 557447, 66363, 597392, 237878, 770231, 353115, 585111, 621525, 658348, 526184, 162690, 673261, 325889, 653458, 590507, 524428, 571157, 557036, 33744, 460883, 480471, 550333, 266355, 318755, 320290, 52215, 250982, 279841, 459764, 552097, 700690, 555171, 260586, 715553, 552881, 490382, 45677, 54751, 541475, 13956, 258896, 425652, 376498, 209601, 290905, 53181, 601337, 339951, 543239, 548753, 373443, 439887, 229037, 307056}

    {16, 17, 41, 56, 2, 3, 21, 15, 3, 10, 29, 46, 42, 42, 33, 38, 18, 10, 4, 50, 39, 50, 17, 32, 37, 11, 3, 46, 54, 36, 30, 42, 10, 18, 28, 35, 55, 13, 12, 37, 10, 51, 2, 12, 8, 21, 3, 48, 26, 41, 22, 16, 47, 34, 5, 56, 6, 52, 14, 38}

    123370

    199299

    770896

    56

    1301222748

    Returns: 6384315

  66. {3254703, 1972004, 2432448, 7597083, 621196, 4138329, 1519196, 44494, 3945056, 6133011, 7819945, 3249688, 7813924, 5070296, 2176979, 7594443, 79128, 2471923, 3243941, 6246561, 3558962}

    {9198717, 1641976, 9064724, 5556418, 8205576, 1520171, 3485444, 3132433, 1405533, 3176489, 1259178, 6453950, 2679151, 1416685, 4007122, 3970085, 7409150, 8235201, 7334016, 612512, 4294672, 5159114, 8035563, 3812815, 4678509, 8505072, 1263650, 798134, 2268992, 5193606, 9178801, 4358601, 5430283, 5841136, 7377952, 3509883, 7417040, 6626752, 7262304, 2535686, 9320446, 8926721, 1083853, 1917235, 3762607, 3417184, 7094532, 2508679, 4205757, 3609781, 8647081, 3864451, 7119563, 3608506, 4571626, 2285748, 5222533, 7017179, 8642968, 2285328, 5098955, 6805555, 759782, 9411225, 1187336, 7639101, 8890320, 207004, 2520012, 6779532, 446428, 6142586, 3629248, 8613448, 8944325, 4043558, 4883206, 891143, 7507124, 6871333, 3176752, 997253, 3067306, 5754126}

    165867

    116107

    8080309

    9422389

    1818118377

    Returns: 18944677092

  67. {141348572, 38617646, 144976930, 82939757, 109891227, 238023062, 10809975, 19944752, 204399761, 219254852, 52778700, 112209048, 120446283, 24715872, 120776667, 53137620, 182788285, 37356166, 76213297, 179389218, 263366740, 162662073, 173629082, 164431136, 124945939, 113276971, 149494960, 150990556, 83436556, 89503546, 168341476, 236982921, 91618983, 11593670, 243784181, 219378793, 234684695, 197546554, 25756293, 215754848, 48789544, 4734658, 34406617, 238062643, 239278853, 231269254, 251838452, 253580941, 142064163, 202073566, 88804062, 73363809, 232137242, 98063222, 55956171, 81332448, 17737237, 1322152, 131028010, 143328877, 78394522, 37252094, 103959991, 258724183, 99092891, 241062575, 61371026, 141517362, 142378919, 219539326, 29691166, 44980530, 121808560, 51785939, 132796479, 47033943, 217876645, 137425557, 147059146, 261324262, 23718856, 1223374, 146965024, 198852900, 219782117, 54267867, 18315585, 182905726, 29515012, 194337234, 128716125, 189809170, 249760068, 72812054, 153019792, 2965697, 58031990, 189838407, 221403002, 6894726, 168130920, 69832041, 21582958, 209938668, 70926322, 140022716, 261249458, 157869774, 252341216, 106904119, 110053259, 87184413, 194788833, 78905610, 265887823, 102606323, 71998777, 165086865, 155647198, 23411028, 27926661, 25252204, 228683834, 129729575, 244503106, 28649175, 203465477, 96394848, 96020362}

    {639474482, 296379138, 620441923, 660276133, 523314866, 500470598, 683897807, 676141339, 512880084, 503916245, 259420427, 325817159, 514500043, 418011508, 191514234, 348936922, 476614927, 199670882, 375566153, 168856867, 617446845, 604549346, 169737997, 509142184, 552184578, 519990533, 359085090, 55712172, 464802732, 260058038, 568517253, 454031259, 40632874, 537505933, 131144230, 400427051, 235122184, 341034946, 565608382, 663755371, 214737688, 74346970, 628939884, 311568922, 369914226, 216338708, 596695573, 596906229, 312001162, 112597965, 125796929, 466914696, 235896958, 348348964, 586484039, 21706665, 444711897, 432154929, 237231597, 456333797, 3114867, 427237141, 47218504, 403939855, 259979374, 86849526, 183951980, 634790399, 390806574, 397994027, 618115210, 200008822, 417433150, 373891306, 322690539, 378425506, 123882098, 412754877, 15986911, 345583791, 289154192, 80695963, 327409564, 31356014, 100012608, 199524471, 42571968, 522216812, 14087740, 438765950, 499616246, 324854282, 434105608, 435962557, 131807324, 236036629, 184799629, 589087968, 135451788, 123159673, 41512414, 221058362, 245166100, 378276106, 643879810, 187567342, 3263795, 616547101, 493272105, 414412882, 365714343, 234918072}

    102149

    106821

    266377668

    698595140

    89650818

    Returns: 10909554473

  68. {}

    {}

    54641

    106021

    1302808

    141

    2054799872

    Returns: 7542507

  69. {}

    {}

    101014

    16280

    5

    786042259

    1164760187

    Returns: 81400

  70. {}

    {20251337, 10058910, 23280840, 3330250, 21698460, 26046693, 13722617, 12070068, 8577949, 19089169, 8088672, 13422687, 11368509, 22499790, 20905291, 15543523, 5612608, 8761249, 17402239, 24397005, 557899, 3654176, 15823888, 20693236, 24491774, 22870337, 26576675, 2977728, 1985558, 24658466, 21904373, 3373856, 24553057, 15177153, 22106815, 11578013, 9649444, 6262299, 20265630, 642523, 15243602, 6613346, 9352250, 13218795, 24766295, 1961615, 26309746, 881703, 1806722, 23754102, 3060472, 19673720, 5917096, 3057404, 5113300, 2540693, 21096794, 17525608, 23136952, 4911347, 9553663, 1440709, 25982730, 14150941, 21510194, 9675018, 9126806, 43557, 6614674, 3706751, 12828013, 16793763, 17361370, 23421918, 4274862, 17841158, 15996684, 5296889, 2202198, 521885, 14042194, 21282009, 10157465, 19137558, 23055974, 1049180, 1514697, 7640464, 15678107, 26572431, 18485700, 24535906, 3899009, 7119798, 25874672, 1258827, 14636749, 7879639, 1173196, 14048107, 4839521, 9628148, 23220920, 1859698, 19926796, 3884297, 6883324, 490200, 17082601, 21790991, 13317016, 8680094, 18900641, 2118704, 22265430, 15405040, 23924510, 12958381, 13634012, 24153861, 8014216, 22347195, 5742912, 20188069, 19101338, 18244862, 22637682, 662290, 24090291, 4452891, 12808494, 20878468, 20217654, 12424505, 13605428, 22946495, 12972094, 24443772, 9866251, 19200897, 4627382, 22002200, 15449775, 17151553, 25422714, 5166616, 20311988, 21327747, 10629399, 22397074, 11326602, 68363, 13551980, 10242443, 6025536, 2315107, 25531808, 19340348, 17893768, 11523641, 13584524, 15630999, 8917584, 21277077, 9054018, 5885932, 1819577, 14600019, 1679924, 3634535, 4320834, 23503694, 6470255, 10594318, 9992317, 23275142, 16263591, 21692698}

    50410

    34632

    1

    26942881

    782060606

    Returns: 34610

  71. {124629, 151133, 18394, 205340, 93908, 207145, 55546, 255472, 191501, 88997, 96188, 312205, 22920, 80035, 28490, 178937, 247342, 187585, 232872, 50093, 273864, 158791, 311720, 188148, 70521, 118273, 8060, 226460, 84633, 59274, 198900, 34106, 99530, 100789, 194801, 271649, 221183, 195340, 263526, 201180, 44457, 233639, 174784, 97140, 223360, 197431, 98874, 10934, 60144, 143532, 223425, 85252, 26875, 173570, 308223, 38061, 200447, 13345, 179657, 154139}

    {}

    64820

    46008

    314605

    14

    2031139775

    Returns: 819699

  72. {53, 4}

    {5820, 2379, 3652, 6268, 12196, 7644, 10785, 6050, 12424, 5054, 6309, 10863, 2026, 7795, 10327, 3683, 1203, 5359, 10115, 3065, 4383, 3056, 6140, 12544, 6800, 1227, 1185, 11649, 4801, 4268, 11999, 31, 10733, 10529, 3674, 7874, 9503, 8247, 1638, 13657, 13743, 10221, 8130, 3934, 4443, 10537, 3259, 13375, 13310, 12310, 1287, 13355, 9059, 1535, 154, 3696, 6119, 5597, 11991, 11756, 5823, 9678, 8753, 9468, 471, 12798, 12240, 6897, 8755, 9478, 1475, 13618, 9131, 8550, 5557, 8050, 9885, 7673, 4434, 10938, 795, 12697, 3205, 12309, 855, 934, 13521, 2960, 6269, 6676, 7140, 12300, 10765, 9319, 12484, 13472, 2556, 3740, 4259, 840, 1228, 4722, 13417, 65, 11303, 7936, 12232, 5977, 8949, 4464, 6412, 13890, 3136, 9999, 564}

    72042

    136810

    53

    13967

    1260814012

    Returns: 738873

  73. {36, 48, 35, 36, 8, 17, 12, 13}

    {}

    113038

    103973

    64

    56776

    2117080682

    Returns: 3036284

  74. {31135051, 46691897, 34774134, 153696042, 54030356, 21334304, 58746598, 56952199, 87413512, 7645170, 130296303, 33573548, 160178243, 135596293, 173269948, 4579324, 1378302, 128165302, 145938571, 169976573, 141572630, 115536279, 102928750, 124435143, 19564440, 148464224, 129318615, 41311655, 95603186, 109220990, 148485696, 49523930, 175250819, 45109268, 67413291, 36632489, 31965702, 115027871, 140091196, 80895717, 18462884, 11600656, 148826573, 117039800, 32076328, 72486764, 71924643, 133508026}

    {891650, 2754856, 197457, 1565756, 1917964, 1487002, 2129030, 82500, 790102, 1811718, 2816701, 1301782, 32740, 1938769, 2714087, 2219640, 2294990, 689472, 2105442, 838908, 651249, 1385720, 3425665, 1834187, 2909226, 1953061, 295474, 3171327, 2792609, 1684781, 523005, 1985873, 2894004, 3336238, 591255, 77916, 280567, 3147732, 3470978, 2304832, 101754, 2439622, 986296, 3531850, 3091096, 803291, 868454, 2855949, 46497, 1343961, 307565, 1561208, 1571332, 1691362, 2214656, 1686920, 527354, 3209716, 2603735, 213166, 1859610, 2617358, 515657, 1178381, 1452128, 1854762, 2261212, 3299689, 1768383, 373616, 1836208, 3287160, 3463136, 807823, 2878982, 2167050, 29048, 1102427, 456244, 1491512, 479056, 2518243, 1969713, 2287769, 2429446, 65648, 1185110, 2793899, 1223978, 2817227, 3475505, 408499, 301205, 206665, 267774, 1710769, 2254813, 2838099, 2172324, 433415, 880501, 2205629, 2090869, 3303668, 1871711, 2628367, 3177399, 3527828, 467812, 1956859, 877097, 2982457}

    53069

    55122

    176288407

    3544833

    1840938584

    Returns: 2901169490

  75. {}

    {648, 466, 1466, 787, 648, 842, 1558, 1142, 130, 1062, 49, 1555, 1048, 929, 1552, 199, 676, 83, 497, 1257, 320, 1532, 1113, 1203, 1059, 1022, 793, 758, 99, 1433, 635, 668, 972, 1564, 1182, 770, 1251, 705, 465, 857, 55, 1581, 688, 484, 721, 1002, 36, 1257, 1303, 927, 1397, 110, 346, 1583, 1507, 1623, 1227, 886, 674, 1378, 1190, 1534, 1101, 1643, 959, 1431, 1238, 1104, 92, 1088, 264, 695, 982, 216, 1332, 591, 1053, 1117, 334, 1682, 453, 1298, 23, 1176, 79, 715, 163, 1574, 921, 844, 925, 1533, 325, 639, 1593}

    4793

    157843

    9

    1686

    1703723986

    Returns: 15138

  76. {}

    {135, 63, 288, 8, 350, 198, 40, 284, 96, 77, 147, 309, 236, 72, 115, 316, 46, 206, 318, 200, 150, 110, 153, 90, 88, 294, 36, 237, 324, 91, 10, 340, 250, 139, 69, 286, 195, 15, 3, 107, 171, 136, 3, 208, 1, 188, 293, 143, 173, 292, 265, 130, 27, 36, 48, 40, 110, 254, 228, 332, 281, 54, 299, 241, 231, 142, 299, 256, 198, 141, 128, 18, 108, 47, 119, 80, 275, 237, 272, 13, 285, 19, 322, 209, 122, 8, 315, 258, 284, 198, 227, 47, 203, 192, 72, 106, 41, 341, 139, 117, 349, 2, 283, 86, 67, 139, 229, 309, 279, 82, 175, 174, 347, 36, 253, 265, 34, 330, 360, 272, 282, 343, 288, 121, 15, 317, 1, 242, 23, 5, 254, 176, 148, 279, 78, 17, 142, 119, 240, 100, 155, 59, 226, 79, 86, 227, 61, 240, 128, 347, 98, 320, 327, 286, 347, 180, 73, 275, 214, 36, 297, 282, 77, 206, 196, 94, 308, 316, 68, 75, 337}

    40959

    150290

    83717949

    360

    1449813959

    Returns: 14740920

  77. {2, 1, 2, 2, 1, 2, 2, 2, 2, 1, 1, 1, 1, 2, 1, 1, 2, 2, 1, 2, 2, 2, 1, 2, 2, 1, 2, 1, 1, 2, 1, 1, 1, 1, 2, 2, 1, 1, 1, 1, 1, 1, 2, 2, 1, 1, 2, 2, 1, 1, 2, 1, 2, 1, 2, 1, 1, 2, 2, 1, 2, 1, 1, 2, 1, 1, 1, 1, 1, 2, 1, 2, 2, 2, 2, 2, 2, 1, 2, 2, 2, 2, 2, 2, 1, 2, 2, 1, 1, 1, 1, 2, 2, 1, 2, 2, 2, 2, 1, 1}

    {}

    109624

    84746

    2

    3102742

    964343956

    Returns: 167156

  78. {2, 2 }

    {3, 4, 3 }

    200000

    200000

    1000

    1000

    8723

    Returns: 500500

  79. { }

    { }

    51000

    45000

    999999973

    999999978

    4247

    Returns: 2295000000

  80. {1, 2, 3, 4 }

    {1, 2, 3, 4 }

    4

    4

    100

    100

    0

    Returns: 10

  81. {2, 3 }

    {3, 4, 3 }

    200000

    45000

    999999973

    999999978

    424711

    Returns: 8999214992


This problem statement is the exclusive and proprietary property of TopCoder, Inc. Any unauthorized use or reproduction of this information without the prior written consent of TopCoder, Inc. is strictly prohibited. (c)2024, TopCoder, Inc. All rights reserved.
This problem was used for: