Statistics

Problem Statement for "TwinTowns"

Problem Statement

Twin Towns are towns which are paired together to encourage human contact and cultural links. The government of your country has decided to establish such relationships among a given set of towns. The following rules must be followed:
  1. Each town must have between 0 and maxPartners twins, inclusive.
  2. The distance between each pair of twin towns must be at least minDistance. The distance between two towns located at (x1, y1) and (x2, y2) is defined as |x1-x2| + |y1-y2|.
The government will establish as many relationships as possible. If there are multiple ways to do this, the government will choose the one that minimizes the sum of the distances between each pair of twin towns. You are given int[]s x and y, where (x[i], y[i]) are the coordinates of the i-th town. Return a int[] containing exactly two elements, where the first element is the number of relationships the government will establish, and the second element is the sum of the distances between each pair of twin towns.

Definition

Class:
TwinTowns
Method:
optimalTwinTowns
Parameters:
int[], int[], int, int
Returns:
int[]
Method signature:
int[] optimalTwinTowns(int[] x, int[] y, int maxPartners, int minDistance)
(be sure your method is public)

Constraints

  • maxPartners will be between 1 and 3, inclusive.
  • x and y will contain between 1 and 10 elements, inclusive.
  • x and y will contain the same number of elements.
  • Each element of x and y will be between 0 and 1,000, inclusive.
  • minDistance will be between 1 and 2,000, inclusive.
  • No two towns will have the same coordinates.

Examples

  1. {0,0,10}

    {0,10,4}

    1

    1

    Returns: {1, 10 }

    We have 3 towns here at coordinates (0,0), (0,10), and (10,4). Each town can have at most one twin. Since we have only 3 towns, we can establish at most one pair of twin towns. The best solution pairs the first and second towns, where the distance is 10.

  2. {0,0,10}

    {0,10,4}

    1

    11

    Returns: {1, 14 }

    These are the same towns from Example 0, but minDistance is now 11. The first and second towns cannot be twins. The best solution is to pair the first and third towns, where the distance is 14.

  3. {0,10,0,10}

    {0,0,20,20}

    1

    1

    Returns: {2, 20 }

    Here we have 4 towns located at the vertices of a rectangle. Each town can have at most one twin. The best solution is to pair the first town with the second, and the third town with the fourth. The distance between each pair is 10.

  4. {0,10,0,10}

    {0,0,20,20}

    2

    10

    Returns: {4, 60 }

    These are the same towns from Example 2, but now, each town can have up to two twins. The best solution establishes 4 pairs of twin towns: the first city at (0,0) with the second city at (10,0), where the distance is 10 the first city at (0,0) with the third city at (0,20), where the distance is 20 the second city at (10,0) with the fourth city at (10,20), where the distance is 20 the third city at (0,20) with the fourth city at (10,20), where the distance is 10 The sum of the distances is 60.

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

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

    3

    10

    Returns: {12, 140 }

  6. {0,0,0,0,0,0,0,0,0}

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

    3

    6

    Returns: {6, 40 }

    We can pair the following list of towns (indexed from 1): 1-7, 1-8, 1-9, 2-8, 2-9, 3-9.

  7. { 899, 2, 726, 102, 721, 243, 650, 40, 707, 487}

    { 397, 498, 773, 605, 225, 263, 151, 533, 205, 6}

    3

    1

    Returns: {15, 5475 }

  8. { 179, 982, 665, 729, 194, 113, 249, 751, 701, 527}

    { 687, 520, 168, 226, 303, 616, 752, 748, 800, 24}

    3

    1

    Returns: {15, 5592 }

  9. { 393, 870, 110, 541, 444, 689, 689, 70, 264, 104}

    { 111, 368, 608, 34, 59, 193, 810, 428, 233, 609}

    3

    1

    Returns: {15, 5485 }

  10. { 99, 468, 199, 573, 124, 634, 467, 152, 252, 870}

    { 605, 972, 698, 928, 619, 867, 975, 661, 749, 626}

    3

    1

    Returns: {15, 3526 }

  11. { 416, 515, 417, 57, 259, 53, 596, 46, 935, 568}

    { 86, 12, 81, 437, 756, 554, 899, 544, 571, 939}

    3

    1

    Returns: {15, 5975 }

  12. { 593, 488, 132, 903, 885, 126, 832, 438, 992, 732}

    { 902, 988, 631, 594, 620, 375, 662, 944, 493, 239}

    3

    76

    Returns: {15, 5859 }

  13. { 841, 70, 747, 238, 336, 374, 594, 661, 168, 975}

    { 342, 574, 247, 265, 829, 126, 898, 160, 329, 525}

    3

    154

    Returns: {15, 6611 }

  14. { 361, 422, 60, 353, 788, 594, 374, 634, 130, 884}

    { 855, 70, 560, 847, 714, 898, 880, 868, 376, 377}

    3

    106

    Returns: {15, 7055 }

  15. { 873, 793, 805, 658, 948, 483, 757, 693, 913, 513}

    { 623, 293, 302, 837, 449, 983, 254, 195, 581, 16}

    3

    87

    Returns: {15, 5797 }

  16. { 749, 446, 190, 617, 202, 991, 429, 861, 687, 693}

    { 753, 52, 695, 119, 702, 505, 72, 361, 815, 812}

    3

    187

    Returns: {15, 8953 }

  17. { 617, 430, 651, 458, 33, 350, 260, 902, 350, 463}

    { 887, 928, 846, 961, 466, 857, 237, 598, 142, 32}

    3

    10

    Returns: {15, 5690 }

  18. { 851, 33, 108, 369, 127, 778, 434, 88, 873, 246}

    { 646, 532, 395, 134, 364, 276, 72, 592, 628, 249}

    3

    649

    Returns: {14, 12205 }

  19. { 0, 492, 660, 814, 256, 886, 901, 661, 199, 983}

    { 498, 993, 157, 315, 750, 379, 399, 831, 700, 519}

    3

    678

    Returns: {13, 12607 }

  20. { 351, 731, 327, 784, 836, 483, 929, 842, 570, 195}

    { 141, 772, 826, 708, 663, 20, 434, 664, 932, 693}

    3

    537

    Returns: {14, 10888 }

  21. { 514, 910, 679, 279, 510, 867, 271, 630, 205, 604}

    { 978, 417, 815, 218, 15, 633, 772, 872, 706, 893}

    3

    454

    Returns: {15, 10000 }

  22. { 912, 622, 569, 772, 656, 35, 502, 932, 581, 722}

    { 391, 402, 974, 705, 202, 839, 456, 338, 78, 357}

    3

    129

    Returns: {15, 6637 }

  23. { 925, 142, 397, 98, 698, 143, 509, 347, 7, 828}

    { 913, 900, 378, 542, 196, 88, 546, 482, 51, 209}

    3

    194

    Returns: {15, 9113 }

  24. { 666, 233, 739, 56, 862, 75, 246, 170, 763, 11}

    { 401, 288, 815, 460, 414, 774, 975, 624, 402, 649}

    3

    115

    Returns: {15, 6673 }

  25. { 100, 472, 640, 189, 689, 824, 199, 519, 858, 565}

    { 157, 137, 479, 467, 967, 780, 802, 704, 669, 962}

    3

    900

    Returns: {8, 8228 }

  26. { 339, 98, 212, 292, 200, 14, 1000, 687, 340, 857}

    { 899, 199, 861, 224, 528, 357, 151, 478, 845, 997}

    3

    538

    Returns: {14, 10876 }

  27. { 840, 888, 139, 782, 376, 106, 161, 944, 267, 335}

    { 654, 729, 430, 188, 753, 6, 685, 155, 1, 502}

    2

    876

    Returns: {9, 9597 }

  28. { 89, 269, 914, 961, 768, 365, 592, 250, 566, 87}

    { 240, 492, 286, 836, 14, 421, 94, 21, 438, 9}

    2

    737

    Returns: {7, 6149 }

  29. { 784, 610, 16, 418, 68, 130, 935, 912, 273, 678}

    { 861, 417, 877, 351, 666, 999, 313, 911, 437, 287}

    2

    892

    Returns: {9, 9306 }

  30. { 98, 587, 590, 477, 852, 151, 321, 419, 677, 957}

    { 569, 349, 843, 367, 712, 713, 568, 197, 770, 32}

    2

    170

    Returns: {10, 4080 }

  31. { 955, 213, 567, 994, 154, 32, 763, 3, 549, 147}

    { 967, 867, 176, 935, 486, 723, 71, 606, 370, 951}

    2

    451

    Returns: {10, 7724 }

  32. { 62, 284, 44, 206, 288, 263, 675, 854, 202, 745}

    { 53, 574, 959, 981, 925, 329, 179, 284, 838, 467}

    1

    900

    Returns: {4, 4316 }

  33. { 229, 160, 799, 20, 687, 441, 10, 474, 220, 947}

    { 359, 641, 574, 689, 727, 740, 14, 969, 144, 835}

    1

    1498

    Returns: {1, 1758 }

  34. { 275, 276, 794, 656, 945, 148, 81, 792, 499, 31}

    { 509, 128, 478, 228, 921, 303, 789, 655, 170, 225}

    1

    1138

    Returns: {2, 2388 }

  35. { 771, 316, 894, 78, 61, 805, 451, 745, 278, 564}

    { 235, 935, 227, 840, 175, 261, 623, 930, 973, 199}

    1

    1477

    Returns: {0, 0 }

  36. { 558, 599, 935, 520, 13, 427, 828, 523, 821, 497}

    { 280, 349, 789, 967, 822, 940, 52, 745, 53, 997}

    1

    150

    Returns: {5, 2419 }

  37. { 585, 144, 0, 330, 0, 0, 0, 279, 0, 1000}

    { 1000, 1000, 69, 0, 328, 529, 955, 1000, 861, 857}

    3

    458

    Returns: {15, 11333 }

  38. { 601, 0, 1000, 0, 306, 1000, 1000, 774, 762, 215}

    { 1000, 89, 30, 802, 1000, 357, 674, 1000, 0, 0}

    3

    895

    Returns: {15, 16606 }

  39. { 0, 760, 1000, 1000, 969, 0, 0, 650, 424, 356}

    { 132, 1000, 785, 504, 0, 933, 197, 0, 0, 0}

    3

    1101

    Returns: {14, 17903 }

  40. { 0, 1000, 1000, 821, 504, 0, 1000, 773, 467, 375}

    { 60, 212, 134, 1000, 1000, 172, 406, 0, 0, 1000}

    3

    967

    Returns: {15, 17630 }

  41. { 995, 0, 131, 1000, 0, 0, 749, 0, 0, 0}

    { 0, 349, 1000, 67, 727, 238, 0, 489, 273, 917}

    3

    1172

    Returns: {9, 12087 }

  42. { 630, 0, 1000, 0}

    { 1000, 30, 500, 693}

    3

    481

    Returns: {6, 6733 }

  43. { 271, 0, 0, 1000, 1000, 1000, 0}

    { 0, 93, 571, 579, 694, 663, 408}

    3

    482

    Returns: {10, 12127 }

  44. { 418, 1000, 1000, 403, 1000, 1000, 0, 381, 335}

    { 0, 134, 348, 1000, 946, 789, 512, 1000, 1000}

    3

    161

    Returns: {13, 9427 }

  45. { 560, 590, 1000, 0, 577, 0, 0, 0, 0, 0}

    { 0, 1000, 522, 625, 0, 616, 896, 928, 203, 312}

    3

    397

    Returns: {15, 12805 }

  46. { 1000, 1000, 290, 23, 0, 842, 216, 0, 0}

    { 477, 351, 1000, 0, 972, 1000, 0, 194, 293}

    3

    125

    Returns: {13, 6819 }

  47. {500}

    {500}

    3

    27

    Returns: {0, 0 }

  48. {5}

    {0}

    1

    1

    Returns: {0, 0 }

  49. {10,20}

    {10,25}

    2

    25

    Returns: {1, 25 }

  50. {10,20}

    {10,25}

    3

    26

    Returns: {0, 0 }

  51. {5}

    {7}

    3

    2

    Returns: {0, 0 }

  52. {0,500,1000, 0, 0, 1000, 1000, 333, 667}

    {0, 0, 0, 500,1000, 500, 1000, 1000, 1000}

    3

    334

    Returns: {13, 8334 }

  53. {0,400,800,1000,1000,1000,600,200,0,0}

    {0,0,0,200,600,1000,1000,1000,800,400}

    3

    401

    Returns: {15, 14000 }

  54. {0,400,800,1000,1000,1000,600,200,0,0}

    {0,0,0,200,600,1000,1000,1000,800,400}

    3

    400

    Returns: {15, 8400 }

  55. {0,400,800,1000,1000,1000,600,200,0,0}

    {0,0,0,200,600,1000,1000,1000,800,400}

    3

    800

    Returns: {15, 14000 }

  56. {0,400,800,1000,1000,1000,600,200,0,0}

    {0,0,0,200,600,1000,1000,1000,800,400}

    3

    801

    Returns: {15, 18800 }

  57. {0,0,1000,1000}

    {0,1000,0,1000}

    3

    2000

    Returns: {2, 4000 }

  58. { 0, 1000, 0, 400, 775, 1000, 382, 214, 1000, 0}

    { 170, 211, 84, 0, 0, 288, 0, 0, 303, 200}

    3

    238

    Returns: {15, 9927 }

  59. { 1000, 725, 805, 1000, 0, 571, 952, 0, 1000, 0}

    { 546, 0, 1000, 600, 395, 0, 1000, 655, 285, 708}

    2

    163

    Returns: {10, 6524 }

  60. { 38, 1000, 1000, 944, 262, 0, 316, 1000, 94, 0}

    { 0, 327, 307, 0, 0, 52, 0, 336, 0, 442}

    1

    173

    Returns: {5, 3190 }

  61. { 0, 1000, 0, 852, 1000, 1000, 1000, 313, 419, 0}

    { 11, 191, 408, 0, 205, 534, 653, 1000, 0, 236}

    3

    225

    Returns: {15, 8506 }

  62. { 1000, 0, 1000, 0, 987, 517, 97, 560, 725, 1000}

    { 768, 367, 63, 529, 1000, 1000, 1000, 0, 0, 469}

    2

    440

    Returns: {10, 7160 }

  63. { 476, 0, 1000, 0, 186, 751, 1000, 957, 763, 748}

    { 1000, 376, 57, 299, 1000, 0, 920, 1000, 0, 1000}

    1

    108

    Returns: {5, 2549 }

  64. { 847, 702, 230, 837, 125, 655, 481, 927, 67, 259}

    { 653, 202, 270, 663, 625, 845, 19, 573, 433, 241}

    3

    781

    Returns: {14, 13682 }

  65. { 622, 676, 201, 364, 863, 518, 111, 816, 250, 843}

    { 122, 176, 701, 864, 637, 982, 611, 684, 250, 343}

    2

    425

    Returns: {10, 6148 }

  66. { 68, 39, 612, 252, 37, 981, 277, 461, 641, 837}

    { 568, 461, 112, 248, 537, 519, 777, 961, 859, 337}

    1

    114

    Returns: {5, 1720 }

  67. { 793, 394, 282, 966, 71, 238, 15, 877, 130, 293}

    { 707, 894, 218, 466, 429, 262, 515, 623, 630, 207}

    3

    121

    Returns: {15, 7398 }

  68. { 4, 602, 180, 362, 81, 682, 481, 748, 381, 678}

    { 504, 898, 320, 862, 419, 182, 19, 248, 881, 178}

    2

    500

    Returns: {10, 7942 }

  69. { 131, 29, 356, 782, 446, 588, 393, 292, 827, 143}

    { 631, 529, 144, 718, 54, 912, 107, 208, 327, 643}

    1

    357

    Returns: {5, 3124 }

  70. { 349, 709, 236, 996, 332, 320, 946, 702, 528}

    { 849, 791, 736, 504, 832, 820, 446, 202, 28}

    1

    134

    Returns: {4, 1926 }

  71. { 163, 592, 832, 918, 844}

    { 337, 908, 668, 582, 656}

    3

    403

    Returns: {6, 4636 }

  72. { 831, 371, 316, 564, 402}

    { 669, 129, 816, 936, 98}

    2

    554

    Returns: {5, 4404 }

  73. { 978, 662, 932, 628, 931, 460, 543}

    { 522, 838, 568, 128, 569, 40, 43}

    1

    586

    Returns: {3, 2290 }

  74. { 921, 520, 974, 408, 256, 958, 450, 184, 747}

    { 421, 980, 526, 92, 244, 542, 50, 316, 753}

    3

    214

    Returns: {13, 8312 }

  75. { 237, 655, 963, 356, 567, 486, 180}

    { 263, 155, 463, 144, 67, 14, 320}

    2

    383

    Returns: {6, 3684 }

  76. { 966, 435, 321, 864, 668, 227, 492, 740, 901}

    { 534, 65, 821, 364, 168, 273, 992, 760, 401}

    1

    369

    Returns: {4, 2220 }

  77. {0, 0, 0, 0, 0, 0, 0, 0, 0 }

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

    3

    6

    Returns: {6, 40 }

  78. {0, 0, 0, 0, 0, 0, 0, 0, 0 }

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

    3

    1

    Returns: {13, 20 }

  79. {303, 300, 600, 901, 0, 300, 600, 900, 0, 0 }

    {473, 0, 0, 0, 300, 300, 300, 300, 477, 0 }

    3

    1

    Returns: {15, 5210 }

  80. {1, 99, 123, 231, 0, 323, 123, 432, 111, 12 }

    {1, 919, 153, 331, 5, 353, 133, 482, 191, 32 }

    3

    200

    Returns: {15, 5853 }

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

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

    3

    1

    Returns: {15, 50 }

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

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

    3

    6

    Returns: {15, 130 }

  83. {0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }

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

    3

    1

    Returns: {15, 295 }

  84. {0, 0, 10 }

    {0, 10, 4 }

    1

    11

    Returns: {1, 14 }

  85. {0, 1, 2, 4 }

    {0, 3, 4, 5 }

    1

    1

    Returns: {2, 7 }

  86. {0, 10, 20, 30, 40, 50, 60, 70, 80, 90 }

    {0, 10, 20, 30, 40, 50, 60, 70, 80, 90 }

    3

    1

    Returns: {15, 500 }

  87. {1, 9, 8, 7, 6, 5, 4, 3, 2 }

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

    3

    1

    Returns: {13, 20 }

  88. {500, 60, 292, 291, 581, 861, 294, 128, 518, 923 }

    {109, 682, 381, 496, 19, 968, 862, 384, 671, 824 }

    3

    100

    Returns: {15, 6996 }

  89. {1, 2, 3, 4, 5, 6, 7, 8, 9, 11 }

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

    3

    1

    Returns: {15, 56 }

  90. {23, 344, 234, 663, 526, 42, 243, 823, 743, 265 }

    {287, 32, 656, 46, 12, 836, 253, 217, 724, 865 }

    3

    58

    Returns: {15, 6166 }

  91. {1, 2, 3, 4, 5, 6, 7, 8, 9 }

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

    3

    1

    Returns: {13, 40 }

  92. {0, 0, 0, 1, 1, 1, 2, 2, 2, 0 }

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

    3

    1

    Returns: {15, 19 }

  93. {0, 0, 0, 0 }

    {0, 3, 5, 7 }

    1

    3

    Returns: {2, 9 }

  94. {0, 0, 27, 6, 126, 123, 110, 20, 1000 }

    {0, 1, 27, 6, 126, 123, 110, 20, 1000 }

    3

    2

    Returns: {13, 3969 }

  95. {0, 0, 0, 0, 0, 0, 0, 0, 0, 2 }

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

    3

    4

    Returns: {15, 76 }

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

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

    3

    1

    Returns: {15, 50 }

  97. {0, 0, 0, 0, 0, 0, 0, 0, 0 }

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

    3

    1

    Returns: {13, 20 }

  98. {1, 3, 4, 6 }

    {0, 0, 0, 0 }

    1

    1

    Returns: {2, 4 }

  99. {0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }

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

    3

    1

    Returns: {15, 25 }

  100. {0, 0, 0, 0 }

    {1, 7, 8, 14 }

    1

    1

    Returns: {2, 12 }

  101. {0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }

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

    3

    1

    Returns: {15, 25 }

  102. {0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }

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

    3

    1

    Returns: {15, 25 }

  103. {0, 1, 10, 11 }

    {0, 12, 12, 0 }

    1

    10

    Returns: {2, 26 }

  104. {0, 11, 5, 6 }

    {0, 0, 100, 100 }

    1

    5

    Returns: {2, 210 }

  105. {0, 10, 11, 20 }

    {0, 0, 0, 0 }

    1

    1

    Returns: {2, 19 }

  106. {1, 3, 6, 7 }

    {1, 1, 1, 1 }

    1

    2

    Returns: {2, 9 }

  107. {629, 600, 240, 208, 481, 719, 90, 304, 604, 835 }

    {989, 772, 271, 724, 607, 995, 217, 911, 334, 92 }

    3

    600

    Returns: {15, 12666 }

  108. {0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }

    {12, 0, 1, 234, 43, 98, 904, 745, 46, 367 }

    3

    1

    Returns: {15, 2696 }

  109. {33, 11, 22, 41, 412, 42, 222, 112, 414, 422 }

    {42, 54, 67, 888, 523, 23, 55, 654, 67, 45 }

    3

    1

    Returns: {15, 4509 }

  110. {629, 600, 240, 208, 481, 719, 90, 304, 604, 835 }

    {989, 772, 271, 724, 607, 995, 217, 911, 334, 92 }

    3

    400

    Returns: {15, 8984 }

  111. {0, 100, 200, 300, 400, 500, 600, 700, 800, 900 }

    {900, 800, 700, 600, 500, 400, 300, 200, 100, 0 }

    3

    700

    Returns: {15, 14600 }

  112. {0, 0, 0, 1, 1, 1, 2, 2, 2, 3 }

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

    3

    1

    Returns: {15, 18 }

  113. {901, 902, 903, 904, 905, 906, 907, 908, 909, 910 }

    {901, 902, 903, 904, 905, 906, 907, 908, 909, 910 }

    3

    1

    Returns: {15, 50 }

  114. {23, 21, 90, 46, 52, 10, 66, 67, 87, 72 }

    {11, 22, 66, 77, 30, 42, 90, 44, 51, 50 }

    3

    40

    Returns: {15, 897 }

  115. {101, 102, 567, 324, 234, 123, 567, 1000, 890, 567 }

    {1, 2, 47, 58, 37, 27, 59, 39, 27, 37 }

    3

    100

    Returns: {15, 4893 }

  116. {629, 600, 240, 208, 481, 719, 90, 304, 604, 835 }

    {989, 772, 271, 724, 607, 995, 217, 911, 334, 92 }

    3

    500

    Returns: {15, 11678 }

  117. {1, 500, 501, 1000 }

    {1, 500, 501, 1000 }

    1

    1

    Returns: {2, 1996 }

  118. {0, 1, 2, 4, 5, 6, 7, 8, 9 }

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

    3

    1

    Returns: {13, 44 }

  119. {0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }

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

    3

    1

    Returns: {15, 25 }

  120. {18, 239, 275, 287, 261, 68, 980, 991, 567, 487 }

    {218, 289, 176, 589, 76, 501, 298, 999, 1000, 465 }

    3

    100

    Returns: {15, 7170 }

  121. {41, 467, 334, 500, 169, 724, 478, 358, 962, 464 }

    {705, 145, 281, 827, 961, 491, 995, 942, 827, 436 }

    3

    100

    Returns: {15, 6107 }

  122. {629, 600, 240, 208, 481, 719, 90, 304, 604, 835 }

    {989, 772, 271, 724, 607, 995, 217, 911, 334, 92 }

    3

    450

    Returns: {15, 10276 }

  123. {0, 100, 200, 300, 301, 500, 600, 700, 800, 903 }

    {0, 100, 200, 300, 301, 500, 600, 700, 800, 901 }

    3

    3

    Returns: {15, 5214 }

  124. {0, 0, 0, 0, 0, 0, 0, 0, 0, 5 }

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

    3

    1

    Returns: {15, 39 }

  125. {364, 281, 44, 558, 767, 599, 385, 108, 463, 641 }

    {184, 911, 325, 826, 704, 334, 871, 782, 385, 249 }

    3

    265

    Returns: {15, 6799 }

  126. {0, 0, 3, 3 }

    {0, 5, 1, 5 }

    1

    5

    Returns: {2, 15 }

  127. {1, 20 }

    {1, 20 }

    1

    1000

    Returns: {0, 0 }

  128. {102, 32, 42, 31, 500, 23, 421, 321, 42, 31 }

    {300, 32, 432, 31, 24, 42, 31, 42, 321, 43 }

    2

    20

    Returns: {10, 3024 }

  129. {100, 200, 300, 400, 500, 600, 700, 800, 900, 1000 }

    {100, 200, 300, 400, 500, 600, 700, 800, 900, 1000 }

    3

    1

    Returns: {15, 5000 }

  130. {0, 10, 0, 10 }

    {0, 0, 1, 20 }

    2

    1

    Returns: {4, 60 }

  131. {1, 1, 1, 0, 2 }

    {1, 0, 2, 1, 1 }

    2

    1

    Returns: {5, 8 }

  132. {1, 2, 3, 4, 5, 6, 7, 8, 9, 200 }

    {345, 464, 532, 454, 234, 555, 456, 323, 444, 555 }

    3

    1

    Returns: {15, 1611 }

  133. {561, 822, 918, 786, 879, 211, 265, 578, 881, 41 }

    {893, 309, 479, 319, 76, 1, 664, 557, 748, 858 }

    3

    500

    Returns: {15, 12640 }

  134. {0, 1000, 0, 1000, 0, 1000, 1, 1000, 50, 1000 }

    {100, 10, 0, 100, 567, 676, 656, 58, 234, 980 }

    3

    3

    Returns: {15, 6134 }

  135. {1, 2, 3, 4, 5, 6, 7, 8, 9, 1000 }

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

    3

    1

    Returns: {15, 5990 }

  136. {1, 0, 2, 2 }

    {0, 1, 1, 4 }

    2

    1

    Returns: {4, 12 }

  137. {897, 802, 765, 992, 1, 521, 220, 380, 729, 969 }

    {184, 887, 104, 641, 909, 378, 724, 582, 387, 583 }

    3

    100

    Returns: {15, 7067 }

  138. {42, 468, 335, 501, 170, 725, 479, 359, 963, 465 }

    {706, 146, 282, 828, 962, 492, 996, 943, 828, 437 }

    3

    1

    Returns: {15, 6107 }

  139. {0, 10, 20, 30, 40, 50, 60, 70, 80, 90 }

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

    3

    1

    Returns: {15, 291 }

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

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

    3

    1

    Returns: {15, 25 }

  141. {1, 2, 3, 0 }

    {0, 0, 0, 0 }

    1

    1

    Returns: {2, 2 }

  142. {354, 5, 14, 24, 5, 14, 34, 14, 5, 24 }

    {5, 14, 5, 14, 65, 24, 5, 14, 34, 24 }

    3

    5

    Returns: {15, 1267 }

  143. {2, 2, 1, 3 }

    {6, 3, 1, 1 }

    1

    3

    Returns: {2, 9 }

  144. {77, 7, 21, 78, 35, 84, 86, 64, 85, 85 }

    {15, 67, 62, 97, 10, 19, 12, 90, 60, 24 }

    3

    1

    Returns: {15, 592 }

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

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

    3

    1

    Returns: {15, 50 }

  146. {0, 10, 20, 30, 40, 50, 60, 70, 80, 90 }

    {20, 40, 59, 60, 20, 70, 90, 100, 50, 65 }

    3

    2

    Returns: {15, 594 }

  147. {0, 0, 4, 4 }

    {0, 3, 1, 2 }

    1

    3

    Returns: {2, 10 }

  148. {0, 0, 1, 2 }

    {0, 1, 0, 2 }

    2

    1

    Returns: {4, 8 }

  149. {0, 2, 2, 2, 3, 3, 3, 5 }

    {2, 0, 2, 4, 0, 2, 4, 2 }

    3

    1

    Returns: {12, 30 }

  150. {10, 10, 12, 12 }

    {10, 12, 10, 7 }

    1

    3

    Returns: {2, 9 }

  151. {10, 20, 30, 40, 50, 60, 70, 80, 90, 78 }

    {10, 20, 30, 40, 40, 40, 56, 60, 70, 90 }

    3

    5

    Returns: {15, 444 }

  152. {1, 1, 1, 1, 1, 1, 1, 1, 1, 1 }

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

    3

    1

    Returns: {15, 25 }

  153. {0, 10, 0, 1000 }

    {0, 0, 10, 1000 }

    2

    1

    Returns: {4, 4000 }

  154. {123, 300, 507, 999, 111, 222, 346, 786, 5, 786 }

    {666, 777, 888, 999, 222, 122, 675, 433, 211, 344 }

    3

    1

    Returns: {15, 6578 }

  155. {1, 2 }

    {0, 0 }

    3

    100

    Returns: {0, 0 }

  156. {0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }

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

    3

    1

    Returns: {15, 328 }

  157. {0, 1, 2 }

    {0, 1, 2 }

    3

    1

    Returns: {3, 8 }

  158. {1, 1, 1, 1 }

    {1, 3, 4, 6 }

    1

    1

    Returns: {2, 4 }

  159. {515, 882, 234, 284, 891, 534, 696, 773, 14, 180 }

    {963, 182, 727, 475, 250, 860, 235, 422, 193, 721 }

    1

    185

    Returns: {5, 2091 }

  160. {1, 1 }

    {1, 2 }

    3

    1

    Returns: {1, 1 }

  161. {1, 3, 5, 7, 9, 11, 13, 15, 17, 19 }

    {1, 3, 5, 7, 9, 11, 13, 15, 17, 19 }

    3

    1

    Returns: {15, 100 }

  162. {10, 15, 12, 20, 48, 28, 22, 21, 29, 299 }

    {120, 145, 112, 202, 484, 228, 232, 121, 29, 3 }

    3

    1

    Returns: {15, 2340 }

  163. {0, 10, 0, 10 }

    {0, 0, 20, 20 }

    2

    10

    Returns: {4, 60 }


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: