Statistics

Problem Statement for "WinterAndShopping"

Problem Statement

It's winter time! Time to do some shopping.

You want to buy some colored balls. The only balls that are on the market nowadays are red, green and blue balls. There are several shops in your city. You are given four int[]'s first, red, green and blue. For each i, the i-th shop starts working on first[i]-th day, works for red[i]+green[i]+blue[i] consecutive days and sells exactly red[i] red balls, green[i] green balls, blue[i] blue balls. Each shop sells exactly one ball on each day it is working.

You also know that the opening days and numbers of balls are such that on any given day at most two shops will be open. Additionally, if there are two shops open on the same day, they are required to sell balls of the same color. You want to know the number X of different orders in which the shops can sell the balls. (Two selling orders are considered different if there is a day and a shop such that in one order the shop sold a ball of a different color than in the other.) Return the value (X modulo 1,000,000,007).

Definition

Class:
WinterAndShopping
Method:
getNumber
Parameters:
int[], int[], int[], int[]
Returns:
int
Method signature:
int getNumber(int[] first, int[] red, int[] green, int[] blue)
(be sure your method is public)

Constraints

  • first, red, green and blue will contain between 1 and 50 elements, inclusive.
  • first, red, green and blue will contain the same number of elements.
  • Each element of first will be between 1 and 500, inclusive.
  • Each element of red, green and blue will be between 0 and 100, inclusive.
  • For each valid i, the value red[i]+green[i]+blue[i] will be strictly greater than 0.
  • For each valid i, the value first[i]+red[i]+green[i]+blue[i]-1 will be less than or equal to 500.
  • For each day, at most two shops will be opened.

Examples

  1. {1}

    {1}

    {1}

    {1}

    Returns: 6

    There is one shop in this case, selling three different balls in three days. All permutations are possible, thus the answer is 6.

  2. {1}

    {3}

    {0}

    {0}

    Returns: 1

    In this case, the shop is selling only balls of red color. Thus, there is only one possibility.

  3. {1, 2}

    {1, 1}

    {1, 1}

    {1, 1}

    Returns: 6

    One of the six valid orders in which all balls can be sold: The first shop sells a red ball, then a blue one, and finally a green one. The second shop (which opens a day later) first sells a blue ball, then a green one, and finally the remaining red one.

  4. {47, 47}

    {1, 0}

    {0, 1}

    {0, 0}

    Returns: 0

    Both stores are open on the same day. However, one store only has a red ball and the other store only has a green ball. The balls don't have the same color, thus the stores cannot sell them on the same day. Hence there is no valid way to sell the balls. In such a case the correct return value is obviously 0.

  5. {1, 100, 200}

    {100, 1, 0}

    {100, 3, 7}

    {100, 2, 4}

    Returns: 79290907

  6. {1, 3}

    {3, 4}

    {4, 4}

    {2, 1}

    Returns: 840

  7. {201}

    {100}

    {100}

    {100}

    Returns: 238354234

  8. {107}

    {100}

    {0}

    {100}

    Returns: 407336795

  9. {47}

    {74}

    {47}

    {81}

    Returns: 660930807

  10. {1, 100}

    {100, 100}

    {100, 100}

    {100, 100}

    Returns: 914122796

  11. {1, 210}

    {70, 70}

    {70, 70}

    {70, 71}

    Returns: 387399513

  12. {1, 200}

    {100, 100}

    {100, 100}

    {100, 100}

    Returns: 614575088

  13. {1, 1}

    {100, 100}

    {100, 100}

    {100, 100}

    Returns: 238354234

  14. {2, 2}

    {100, 100}

    {100, 99}

    {99, 100}

    Returns: 0

  15. {1, 2}

    {100, 100}

    {100, 99}

    {100, 100}

    Returns: 412784747

  16. {2, 1}

    {100, 100}

    {100, 100}

    {99, 100}

    Returns: 412784747

  17. {1, 1, 31, 31}

    {10, 10, 10, 10}

    {10, 10, 10, 10}

    {10, 10, 10, 10}

    Returns: 366591467

  18. {1, 3, 31, 33}

    {10, 9, 10, 10}

    {10, 9, 10, 8}

    {10, 10, 10, 10}

    Returns: 572332738

  19. {1, 150, 301}

    {100, 100, 100}

    {100, 100, 100}

    {100, 100, 0}

    Returns: 532101190

  20. {2, 2, 173}

    {100, 50, 50}

    {100, 47, 53}

    {100, 74, 26}

    Returns: 70618662

  21. {1, 220, 150}

    {70, 70, 50}

    {70, 70, 50}

    {70, 70, 50}

    Returns: 291495139

  22. {2, 2, 64, 159}

    {100, 20, 25, 55}

    {100, 20, 30, 50}

    {100, 22, 40, 38}

    Returns: 943797878

  23. {2, 2, 64, 159}

    {100, 20, 25, 100}

    {100, 20, 30, 100}

    {100, 22, 40, 100}

    Returns: 682443942

  24. {2, 2, 70, 159}

    {100, 20, 21, 55}

    {100, 20, 29, 50}

    {100, 22, 39, 38}

    Returns: 297927562

  25. {2, 2, 70, 159}

    {100, 20, 21, 52}

    {100, 20, 29, 45}

    {100, 22, 39, 30}

    Returns: 139586270

  26. {47, 100, 347}

    {100, 74, 50}

    {100, 82, 50}

    {100, 91, 54}

    Returns: 731995999

  27. {47, 100, 400}

    {100, 74, 20}

    {100, 82, 50}

    {100, 91, 31}

    Returns: 87834715

  28. {1, 1, 140, 380}

    {50, 40, 100, 20}

    {50, 33, 100, 20}

    {50, 47, 100, 20}

    Returns: 190152337

  29. {1, 50, 275, 300}

    {70, 40, 70, 40}

    {70, 40, 70, 50}

    {70, 40, 69, 67}

    Returns: 969298357

  30. {1, 50, 211, 270}

    {70, 40, 70, 40}

    {70, 40, 70, 50}

    {70, 40, 69, 67}

    Returns: 690498127

  31. {1, 151, 75, 225}

    {50, 50, 50, 50}

    {20, 37, 11, 51}

    {80, 63, 89, 49}

    Returns: 902434720

  32. {1, 2}

    {99, 100}

    {99, 100}

    {100, 100}

    Returns: 253108781

  33. {1, 50}

    {100, 100}

    {100, 100}

    {100, 100}

    Returns: 519814788

  34. {1, 201}

    {100, 100}

    {100, 0}

    {0, 100}

    Returns: 399409184

  35. {1, 101}

    {100, 0}

    {0, 100}

    {100, 100}

    Returns: 1

  36. {1, 101, 201}

    {100, 0, 100}

    {100, 100, 0}

    {0, 100, 100}

    Returns: 1

  37. {1, 101, 201, 301}

    {100, 100, 100, 100}

    {100, 100, 100, 100}

    {0, 0, 0, 0}

    Returns: 934835476

  38. {47}

    {0}

    {0}

    {100}

    Returns: 1

  39. {1, 51, 101, 151, 201, 251, 301, 351, 401, 451}

    {25, 30, 25, 25, 25, 25, 21, 25, 25, 25}

    {25, 20, 25, 25, 25, 25, 29, 25, 25, 20}

    {0, 0, 0, 0, 0, 0, 0, 0, 0, 5}

    Returns: 429080757

  40. {335, 170, 463, 468, 1}

    {3, 12, 2, 2, 23}

    {20, 13, 1, 2, 6}

    {2, 31, 0, 8, 13}

    Returns: 906425542

  41. {39, 422, 272, 219, 383}

    {15, 9, 4, 7, 6}

    {36, 9, 11, 2, 2}

    {49, 9, 7, 0, 6}

    Returns: 179300028

  42. {360, 224, 254, 38, 145}

    {9, 2, 0, 1, 15}

    {1, 8, 4, 9, 1}

    {0, 9, 1, 1, 3}

    Returns: 554238668

  43. {371, 85, 124, 341, 394, 7, 230}

    {14, 4, 0, 5, 35, 28, 5}

    {0, 8, 7, 5, 25, 10, 8}

    {7, 6, 0, 1, 2, 5, 15}

    Returns: 837874880

  44. {13, 162, 330, 478, 73, 291, 98, 387, 271, 246}

    {5, 1, 1, 7, 1, 7, 2, 23, 3, 22}

    {4, 9, 22, 3, 1, 8, 1, 10, 2, 0}

    {1, 3, 4, 0, 0, 2, 37, 6, 3, 1}

    Returns: 232548898

  45. {351, 411, 21, 125, 169, 42, 97, 92, 375, 292}

    {5, 32, 5, 18, 2, 3, 5, 1, 8, 28}

    {5, 26, 2, 1, 82, 3, 1, 3, 17, 4}

    {0, 16, 11, 13, 11, 2, 1, 1, 2, 14}

    Returns: 938787497

  46. {4, 24, 158, 196, 315, 344, 57, 389, 250, 486, 94, 293, 88, 299, 459, 191, 203, 110, 10, 123}

    {3, 12, 2, 1, 1, 0, 0, 3, 9, 1, 2, 2, 2, 3, 7, 0, 4, 1, 6, 12}

    {1, 1, 4, 0, 1, 0, 24, 52, 2, 1, 5, 0, 1, 1, 3, 1, 8, 6, 2, 17}

    {2, 3, 17, 5, 0, 2, 1, 6, 22, 3, 1, 3, 0, 2, 5, 1, 11, 3, 3, 6}

    Returns: 242769983

  47. {194, 287, 61, 50, 309, 13, 450, 202, 413, 186, 146, 424, 280, 489, 317, 257, 235, 115, 442, 356}

    {1, 0, 8, 0, 4, 7, 5, 17, 1, 2, 5, 6, 0, 4, 10, 0, 0, 3, 1, 4}

    {1, 5, 3, 4, 1, 4, 1, 1, 4, 1, 12, 9, 4, 0, 4, 8, 0, 23, 1, 6}

    {1, 7, 35, 1, 1, 7, 1, 0, 0, 0, 10, 0, 0, 5, 3, 0, 20, 0, 3, 2}

    Returns: 233475501

  48. {21, 130, 291, 236, 11, 214, 463, 226, 271, 361, 188, 258, 117, 154, 261, 78, 327, 195, 126, 441, 429, 467, 51, 4, 264, 168, 26, 179, 414, 475, 163, 488, 203, 303, 372, 19, 286, 397, 425, 100, 143, 44, 403, 62, 87, 66, 31, 334, 124, 94}

    {0, 6, 7, 0, 0, 0, 1, 1, 0, 1, 0, 0, 0, 2, 1, 0, 3, 0, 1, 1, 1, 4, 0, 1, 2, 2, 0, 0, 1, 0, 1, 1, 0, 3, 9, 1, 2, 5, 2, 7, 1, 1, 6, 3, 0, 6, 2, 2, 0, 1}

    {2, 3, 4, 2, 0, 10, 1, 2, 2, 4, 2, 1, 1, 1, 0, 1, 0, 1, 1, 12, 3, 2, 2, 2, 0, 0, 1, 1, 1, 1, 1, 3, 3, 7, 3, 1, 0, 0, 1, 3, 2, 0, 3, 0, 1, 3, 0, 12, 2, 1}

    {2, 3, 0, 1, 2, 0, 1, 0, 0, 1, 0, 1, 3, 3, 1, 1, 1, 1, 1, 6, 1, 1, 9, 0, 0, 2, 2, 3, 9, 10, 1, 2, 7, 4, 0, 0, 0, 0, 0, 1, 8, 4, 1, 1, 1, 3, 0, 5, 0, 2}

    Returns: 805643415

  49. {182, 444, 371, 424, 214, 330, 104, 4, 11, 222, 348, 414, 365, 288, 164, 498, 109, 20, 293, 207, 41, 92, 62, 476, 464, 490, 264, 101, 248, 50, 128, 133, 29, 324, 402, 71, 46, 43, 175, 314, 78, 149, 470, 260, 472, 88, 241, 171, 276, 205}

    {0, 1, 10, 3, 1, 5, 0, 0, 1, 8, 9, 2, 0, 0, 2, 1, 5, 4, 2, 2, 0, 2, 0, 0, 0, 2, 0, 1, 0, 0, 1, 5, 1, 0, 2, 2, 1, 0, 3, 0, 6, 1, 1, 0, 0, 1, 4, 0, 1, 0}

    {2, 1, 8, 2, 0, 1, 0, 6, 3, 2, 4, 1, 1, 0, 0, 0, 4, 4, 1, 4, 2, 4, 5, 4, 3, 1, 5, 0, 3, 2, 2, 1, 1, 0, 2, 1, 0, 1, 2, 4, 1, 3, 1, 1, 2, 0, 2, 2, 3, 1}

    {1, 0, 5, 1, 2, 8, 2, 0, 2, 2, 4, 7, 1, 3, 0, 1, 3, 1, 9, 1, 0, 2, 0, 7, 2, 1, 2, 1, 1, 6, 0, 0, 10, 2, 5, 3, 1, 1, 0, 2, 1, 1, 0, 3, 0, 1, 0, 0, 8, 1}

    Returns: 576090728

  50. {307, 81, 275, 88, 17, 72, 310, 118, 56, 399, 289, 246, 317, 40, 130, 482, 381, 177, 455, 182, 294, 365, 9, 370, 263, 331, 194, 29, 341, 103, 424, 187, 211, 442, 114, 163, 406, 116, 326, 85, 465, 475, 133, 224, 168, 151, 216, 269, 59, 416}

    {1, 0, 2, 7, 4, 0, 0, 1, 0, 3, 1, 1, 2, 0, 1, 0, 0, 0, 1, 0, 1, 1, 2, 2, 1, 1, 0, 3, 21, 6, 2, 3, 0, 5, 1, 3, 1, 1, 0, 0, 4, 4, 0, 2, 0, 0, 3, 0, 6, 0}

    {1, 3, 0, 5, 1, 2, 3, 1, 1, 2, 0, 3, 1, 3, 1, 3, 6, 3, 1, 2, 1, 3, 2, 1, 1, 3, 1, 0, 2, 2, 8, 1, 2, 3, 1, 1, 2, 0, 2, 0, 1, 0, 2, 0, 2, 2, 4, 1, 1, 7}

    {0, 0, 3, 0, 1, 1, 4, 6, 1, 0, 2, 1, 0, 0, 0, 1, 0, 1, 1, 2, 1, 0, 1, 2, 1, 0, 7, 1, 1, 1, 5, 0, 1, 3, 0, 1, 0, 1, 0, 2, 3, 0, 3, 2, 0, 2, 0, 1, 0, 0}

    Returns: 741398446

  51. {123, 448, 290, 429, 451, 90, 359, 201, 269, 223, 13, 368, 205, 106, 307, 193, 482, 322, 263, 403, 344, 329, 416, 74, 78, 411, 32, 256, 392, 375, 112, 197, 22, 284, 277, 492, 461, 65, 53, 487, 426, 178, 473, 169, 228, 10, 469, 440, 162, 35}

    {14, 0, 4, 3, 0, 2, 1, 2, 0, 0, 1, 0, 13, 1, 0, 1, 1, 2, 2, 2, 3, 1, 1, 2, 1, 0, 1, 0, 2, 1, 1, 0, 5, 1, 1, 2, 0, 3, 0, 4, 1, 2, 2, 5, 7, 1, 1, 2, 1, 0}

    {5, 2, 1, 2, 8, 2, 2, 1, 6, 2, 3, 3, 4, 4, 12, 3, 0, 1, 1, 3, 5, 3, 7, 0, 4, 3, 0, 0, 0, 1, 1, 0, 1, 1, 2, 0, 8, 1, 5, 1, 0, 1, 1, 0, 12, 1, 1, 0, 1, 1}

    {3, 0, 7, 2, 1, 2, 4, 1, 1, 0, 3, 2, 0, 0, 2, 0, 1, 1, 0, 2, 6, 0, 0, 0, 2, 0, 1, 5, 1, 1, 0, 2, 1, 3, 1, 3, 0, 1, 0, 0, 1, 3, 0, 0, 9, 0, 0, 5, 4, 13}

    Returns: 949746449

  52. {30, 211}

    {7, 15}

    {2, 50}

    {3, 35}

    Returns: 996145457

  53. {472, 74, 160, 79}

    {6, 4, 15, 0}

    {1, 90, 43, 5}

    {2, 6, 42, 0}

    Returns: 700251798

  54. {73, 4, 371, 468, 453, 397, 314, 217}

    {55, 0, 11, 4, 0, 6, 41, 14}

    {32, 1, 0, 5, 2, 28, 8, 2}

    {13, 5, 0, 2, 1, 3, 1, 10}

    Returns: 532566532

  55. {242, 375, 130, 400, 194, 249, 487, 24, 15, 96, 259, 173, 430, 470, 179, 169, 82, 109, 78, 292, 417, 7, 59, 251, 147, 125, 288, 391, 111, 322, 246, 451, 179, 275, 427, 364, 217, 356, 482, 182, 172, 382, 474, 51, 74, 144, 302, 253, 22, 462}

    {1, 6, 1, 7, 13, 0, 4, 2, 2, 6, 6, 0, 2, 3, 6, 2, 1, 0, 2, 1, 1, 1, 1, 0, 0, 7, 0, 10, 2, 20, 0, 0, 0, 7, 9, 0, 6, 1, 8, 0, 0, 4, 0, 2, 2, 4, 10, 2, 2, 0}

    {2, 1, 4, 0, 5, 2, 3, 6, 2, 5, 4, 4, 9, 2, 6, 0, 7, 2, 1, 5, 1, 1, 1, 3, 0, 2, 5, 13, 1, 2, 1, 3, 2, 1, 1, 4, 7, 1, 1, 17, 1, 1, 1, 9, 0, 6, 7, 0, 3, 1}

    {0, 2, 11, 7, 19, 0, 3, 25, 0, 0, 17, 1, 7, 0, 2, 1, 5, 12, 0, 0, 5, 0, 6, 1, 6, 3, 5, 10, 0, 11, 2, 3, 1, 0, 12, 10, 4, 3, 9, 2, 1, 3, 3, 1, 0, 1, 1, 0, 4, 4}

    Returns: 0

  56. {1, 2, 94, 105, 166, 218, 262, 356, 448, 488}

    {10, 10, 7, 9, 23, 23, 65, 60, 26, 0}

    {36, 41, 14, 29, 21, 24, 45, 15, 13, 11}

    {39, 44, 34, 40, 45, 26, 18, 53, 8, 2}

    Returns: 98796132

  57. {1, 9, 60, 77, 103, 203, 333, 341, 386, 441}

    {34, 34, 9, 44, 52, 21, 25, 31, 22, 36}

    {17, 14, 6, 18, 31, 19, 16, 18, 23, 12}

    {8, 7, 7, 19, 100, 95, 3, 17, 33, 12}

    Returns: 334259585

  58. {1, 6, 34, 43, 64, 89, 106, 153, 170, 182, 211, 230, 254, 270, 292, 315, 327, 396, 471, 488}

    {7, 9, 5, 9, 11, 12, 16, 3, 16, 15, 13, 7, 12, 18, 10, 26, 43, 59, 7, 6}

    {18, 22, 8, 19, 16, 14, 13, 11, 9, 16, 10, 10, 2, 10, 12, 17, 20, 7, 3, 6}

    {5, 5, 2, 14, 5, 27, 28, 14, 6, 7, 12, 14, 10, 7, 11, 8, 32, 19, 11, 1}

    Returns: 432302370

  59. {1, 57, 76, 95, 107, 120, 131, 185, 210, 225, 234, 238, 294, 331, 347, 373, 409, 446, 475, 488}

    {48, 8, 20, 7, 8, 12, 21, 11, 1, 4, 5, 21, 10, 9, 11, 18, 35, 15, 0, 6}

    {10, 4, 4, 9, 7, 3, 24, 20, 11, 3, 10, 26, 11, 14, 13, 7, 11, 9, 10, 5}

    {4, 11, 6, 7, 3, 2, 23, 9, 5, 4, 3, 22, 25, 3, 13, 24, 10, 13, 6, 2}

    Returns: 166712465

  60. {1, 3, 24, 39, 45, 49, 57, 67, 70, 79, 89, 100, 112, 127, 136, 138, 143, 163, 179, 189, 191, 196, 204, 223, 234, 246, 258, 261, 273, 292, 303, 312, 320, 339, 353, 361, 368, 378, 384, 392, 396, 406, 414, 423, 436, 451, 457, 463, 476, 491}

    {1, 7, 0, 0, 3, 6, 4, 1, 9, 7, 7, 3, 5, 2, 1, 6, 7, 16, 8, 4, 5, 5, 9, 5, 2, 3, 2, 2, 11, 8, 2, 6, 7, 7, 2, 2, 6, 4, 2, 4, 6, 3, 1, 8, 9, 3, 3, 3, 6, 4}

    {6, 7, 8, 2, 2, 8, 4, 2, 5, 6, 6, 10, 16, 8, 2, 11, 12, 1, 3, 3, 2, 3, 10, 15, 11, 5, 5, 5, 11, 2, 8, 12, 15, 2, 2, 7, 7, 4, 5, 2, 2, 4, 10, 11, 9, 4, 5, 10, 5, 3}

    {2, 16, 12, 8, 3, 2, 5, 2, 3, 1, 3, 6, 2, 1, 4, 5, 3, 5, 1, 0, 3, 3, 5, 1, 5, 6, 8, 9, 7, 3, 5, 5, 7, 11, 6, 6, 3, 4, 4, 4, 8, 4, 2, 1, 2, 2, 4, 5, 10, 3}

    Returns: 833770949

  61. {1, 3, 7, 27, 46, 66, 71, 86, 91, 100, 110, 128, 135, 147, 150, 155, 168, 176, 185, 188, 205, 232, 249, 252, 261, 274, 279, 309, 312, 317, 322, 341, 359, 363, 367, 376, 382, 386, 391, 396, 425, 428, 431, 435, 444, 450, 468, 475, 479, 490}

    {1, 2, 8, 8, 0, 0, 2, 4, 4, 6, 4, 1, 3, 3, 4, 5, 4, 4, 3, 7, 9, 4, 3, 6, 6, 10, 19, 1, 3, 3, 7, 5, 0, 1, 1, 0, 4, 6, 6, 11, 2, 1, 2, 2, 4, 9, 3, 6, 12, 7}

    {2, 11, 18, 10, 8, 3, 1, 6, 7, 7, 6, 8, 10, 3, 5, 10, 2, 7, 5, 8, 13, 12, 3, 4, 7, 4, 6, 3, 3, 6, 15, 12, 5, 6, 11, 8, 5, 2, 16, 19, 3, 2, 4, 11, 6, 7, 3, 1, 3, 2}

    {1, 6, 9, 5, 14, 16, 17, 4, 4, 12, 10, 6, 1, 0, 1, 1, 4, 1, 4, 22, 18, 4, 2, 5, 5, 6, 7, 3, 2, 8, 13, 5, 2, 4, 2, 1, 0, 1, 1, 1, 0, 2, 1, 1, 1, 5, 3, 6, 6, 2}

    Returns: 549504419

  62. {1, 4, 8, 14, 20, 24, 33, 43, 46, 61, 71, 92, 99, 108, 125, 131, 133, 155, 161, 172, 188, 217, 223, 239, 252, 260, 262, 267, 276, 284, 294, 318, 334, 356, 361, 374, 387, 389, 403, 410, 413, 420, 441, 448, 453, 459, 464, 470, 472, 490}

    {0, 1, 3, 4, 3, 6, 3, 1, 3, 4, 7, 5, 3, 11, 3, 6, 6, 6, 7, 11, 5, 3, 6, 10, 0, 0, 0, 4, 7, 16, 13, 3, 6, 2, 7, 7, 1, 5, 4, 3, 14, 14, 2, 1, 3, 2, 2, 3, 5, 7}

    {3, 5, 1, 2, 2, 3, 1, 6, 8, 18, 14, 3, 7, 2, 4, 10, 12, 3, 7, 19, 21, 1, 5, 4, 7, 4, 5, 1, 3, 6, 9, 20, 15, 10, 9, 0, 5, 9, 5, 1, 4, 4, 6, 3, 2, 4, 3, 1, 13, 1}

    {3, 4, 4, 4, 5, 7, 8, 5, 8, 3, 3, 3, 6, 10, 1, 6, 7, 4, 3, 5, 5, 10, 7, 5, 3, 0, 2, 6, 6, 10, 6, 3, 3, 4, 8, 8, 1, 6, 1, 3, 5, 5, 4, 3, 3, 3, 3, 0, 6, 3}

    Returns: 474721020

  63. {1, 1, 12, 28, 30, 40, 45, 51, 56, 58, 67, 76, 100, 121, 125, 132, 141, 155, 165, 172, 194, 196, 206, 214, 232, 239, 249, 255, 266, 271, 293, 296, 302, 313, 322, 333, 341, 363, 381, 394, 410, 419, 428, 435, 442, 447, 453, 463, 477, 488}

    {1, 3, 0, 9, 9, 3, 3, 4, 0, 7, 3, 5, 6, 1, 1, 1, 7, 11, 7, 2, 4, 4, 1, 10, 1, 5, 5, 1, 6, 7, 0, 9, 11, 5, 3, 5, 11, 7, 7, 6, 6, 3, 2, 4, 5, 1, 2, 16, 11, 8}

    {3, 12, 5, 0, 3, 5, 4, 2, 2, 4, 3, 19, 17, 5, 6, 8, 12, 6, 8, 16, 6, 6, 3, 7, 4, 4, 2, 4, 5, 4, 2, 2, 4, 13, 9, 3, 20, 9, 8, 5, 4, 3, 3, 3, 4, 7, 7, 8, 7, 3}

    {1, 12, 13, 2, 0, 2, 2, 1, 2, 2, 6, 2, 2, 2, 3, 3, 1, 0, 4, 6, 1, 7, 6, 6, 5, 7, 8, 10, 10, 13, 3, 2, 2, 2, 2, 4, 5, 4, 6, 10, 4, 7, 4, 3, 1, 1, 4, 1, 2, 2}

    Returns: 849927198

  64. {1, 4, 15, 28, 38, 57, 72, 85, 89, 105, 123, 138, 148, 150, 158, 169, 174, 184, 196, 218, 220, 224, 232, 245, 249, 253, 263, 269, 272, 291, 297, 300, 315, 334, 352, 366, 369, 383, 391, 394, 406, 412, 418, 421, 425, 444, 460, 483, 491, 494}

    {2, 2, 4, 6, 7, 2, 2, 2, 6, 3, 5, 6, 1, 1, 0, 0, 2, 6, 7, 0, 1, 6, 9, 3, 1, 2, 0, 1, 8, 2, 8, 12, 10, 11, 3, 3, 2, 0, 2, 3, 6, 6, 2, 2, 0, 11, 19, 1, 2, 3}

    {4, 12, 9, 6, 17, 12, 6, 2, 8, 13, 4, 5, 3, 7, 2, 6, 12, 9, 8, 0, 4, 4, 2, 3, 3, 7, 7, 2, 9, 5, 6, 6, 11, 15, 10, 5, 8, 8, 4, 6, 0, 1, 1, 9, 9, 7, 3, 6, 2, 3}

    {3, 3, 6, 11, 9, 5, 8, 6, 5, 6, 11, 1, 1, 10, 11, 1, 1, 4, 9, 4, 5, 6, 4, 2, 7, 7, 1, 4, 6, 2, 2, 12, 12, 5, 4, 5, 9, 3, 2, 5, 2, 1, 2, 12, 12, 3, 4, 3, 2, 1}

    Returns: 911821998

  65. {1, 300}

    {100, 100}

    {100, 50}

    {100, 50}

    Returns: 362019470

  66. {1, 300}

    {100, 100}

    {100, 100}

    {100, 0}

    Returns: 690868967

  67. {1, 250, 301}

    {100, 75, 67}

    {100, 75, 66}

    {100, 75, 67}

    Returns: 837553445

  68. {1, 1, 4, 7, 10, 13, 16, 19, 22, 25, 28, 31, 34, 37, 40, 43, 46, 49, 52, 55, 58, 61, 64, 67, 70, 73, 76, 79, 82, 85, 88, 91, 94, 97, 100, 103, 106, 109, 112, 115, 118, 121, 124, 127, 130, 133, 136, 139, 142, 145}

    {100, 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}

    {100, 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}

    {100, 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}

    Returns: 996778998

  69. {1, 1, 4, 7, 10, 13, 16, 19, 22, 25, 28, 31, 34, 37, 40, 43, 46, 49, 52, 55, 58, 61, 64, 67, 70, 73, 76, 79, 82, 85, 88, 91, 94, 97, 100, 103, 106, 109, 112, 115, 118, 121, 124, 127, 130, 133, 136, 139, 142, 145}

    {50, 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}

    {50, 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}

    {47, 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}

    Returns: 0

  70. {1, 1, 4, 7, 10, 13, 16, 19, 22, 25, 28, 31, 34, 37, 40, 43, 46, 49, 52, 55, 58, 61, 64, 67, 70, 73, 76, 79, 82, 85, 88, 91, 94, 97, 100, 103, 106, 109, 112, 115, 118, 121, 124, 127, 130, 133, 136, 139, 142, 145}

    {49, 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}

    {49, 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}

    {49, 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}

    Returns: 586971998

  71. {1}

    {100}

    {100}

    {100}

    Returns: 238354234

  72. {1, 1, 146, 206, 282, 335, 443, 463, 468, 492}

    {11, 43, 35, 19, 7, 30, 10, 7, 12, 5}

    {7, 79, 18, 73, 66, 79, 13, 5, 9, 3}

    {24, 48, 27, 31, 5, 19, 0, 5, 8, 1}

    Returns: 681214107

  73. {1, 30, 41, 149, 224, 242, 279, 306, 343, 443}

    {15, 29, 66, 30, 18, 9, 2, 23, 13, 17}

    {17, 26, 40, 32, 9, 14, 20, 31, 47, 39}

    {4, 23, 45, 20, 15, 25, 17, 32, 45, 2}

    Returns: 464015302

  74. {1, 13, 53, 74, 98, 156, 268, 278, 330, 425}

    {10, 26, 2, 20, 22, 3, 6, 20, 42, 18}

    {17, 19, 9, 24, 21, 71, 2, 27, 75, 21}

    {5, 16, 12, 20, 22, 42, 16, 32, 41, 37}

    Returns: 412771404

  75. {1, 21, 54, 103, 200, 282, 337, 351, 419, 485}

    {20, 21, 21, 10, 31, 15, 14, 28, 36, 9}

    {2, 25, 76, 94, 42, 37, 20, 48, 12, 5}

    {0, 31, 19, 29, 20, 16, 5, 13, 34, 2}

    Returns: 150665444

  76. {1, 10, 81, 119, 158, 191, 201, 293, 299, 459}

    {7, 14, 20, 29, 10, 53, 58, 83, 82, 21}

    {11, 33, 3, 10, 14, 29, 23, 1, 12, 4}

    {21, 34, 20, 23, 11, 10, 16, 73, 81, 17}

    Returns: 48209167

  77. {1, 3, 89, 155, 183, 258, 333, 427}

    {1, 13, 17, 30, 32, 19, 17, 20}

    {20, 26, 37, 24, 48, 50, 17, 52}

    {65, 77, 28, 14, 24, 98, 67, 2}

    Returns: 319714325

  78. {1, 54, 172, 202, 264, 287, 317, 456}

    {31, 37, 4, 17, 18, 14, 39, 31}

    {5, 50, 17, 29, 24, 44, 72, 5}

    {79, 46, 43, 36, 9, 12, 62, 9}

    Returns: 746601279

  79. {1, 19, 126, 203, 314, 325, 392, 415, 475}

    {6, 48, 67, 14, 4, 12, 9, 1, 1}

    {6, 62, 62, 68, 6, 54, 46, 43, 17}

    {11, 41, 34, 31, 12, 16, 13, 20, 8}

    Returns: 321605193

  80. {1, 65, 223, 401}

    {63, 60, 100, 35}

    {44, 77, 86, 47}

    {36, 86, 49, 18}

    Returns: 502310659

  81. {1, 20, 195}

    {42, 99, 24}

    {61, 61, 39}

    {22, 17, 100}

    Returns: 584826296

  82. {1,1}

    {0,1}

    {0,0}

    {1,1}

    Returns: 1

  83. {2, 2, 70, 159, 300 }

    {100, 20, 21, 52, 32 }

    {100, 20, 29, 45, 44 }

    {100, 22, 39, 30, 100 }

    Returns: 562914636

  84. {156, 60, 172, 28, 345, 393, 443, 299, 228, 211, 264, 482, 247, 40, 199, 10, 278, 163, 471, 140, 111, 117, 394, 466, 235, 328, 93, 102, 54, 481, 10, 152, 253, 265, 336, 463, 1, 4, 220, 20, 94, 110, 47, 487, 34 }

    {27, 23, 5, 52, 8, 18, 6, 75, 13, 5, 31, 2, 0, 2, 2, 0, 6, 4, 8, 6, 3, 10, 1, 13, 0, 0, 2, 5, 0, 1, 0, 2, 0, 1, 0, 3, 2, 3, 5, 1, 1, 0, 0, 1, 2 }

    {33, 6, 2, 13, 37, 23, 0, 6, 1, 3, 20, 3, 4, 1, 7, 8, 10, 0, 2, 0, 3, 21, 43, 3, 5, 2, 2, 0, 5, 1, 4, 1, 5, 1, 3, 2, 4, 3, 0, 2, 3, 3, 0, 1, 2 }

    {19, 4, 16, 0, 2, 31, 14, 14, 1, 0, 13, 1, 14, 3, 1, 13, 0, 1, 0, 3, 18, 2, 2, 0, 13, 4, 13, 0, 0, 3, 5, 2, 1, 4, 3, 1, 3, 0, 0, 5, 3, 2, 5, 5, 1 }

    Returns: 0


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: