Statistics

Problem Statement for "Crossings"

Problem Statement

You are watching a car race. Each car starts at a different point on the x-axis, travels at the same speed, and starts at the same time. However, each car is travelling along a different road (which extends to infinity in one direction, and is stopped by the x-axis in the other direction), and each road has its own direction specified by an angle between 1 and 179, inclusive. An angle of 90 indicates that the road heads directly in the positive y direction, while an angle of 1 indicates that the road heads just a little bit north of the positive x direction.


Sometimes, two or more roads intersect at some point. When this happens, the car that reaches the intersection first is able to block the intersection so that no other cars can pass through it. If two cars arrive at an intersection at the same time, the car that appears earlier in the input (lower index) will be the only car to pass through.


In this picture, the cars following the red paths at 0, 10 and 50 pass all intersections, while the cars following the gray paths are stopped (see example 0).
You will be given two int[]s, positions, and angles, where the ith car corresponds to the ith element of positions and the ith element of angles. The ith element of positions is the x coordinate of the ith car. The ith element of angles is the angle in degrees between the x-axis and the road that the ith car travels on. Your method should return a int[] containing the 0-based indices of all the cars that will pass all the intersections along their roads. Your return should be sorted in ascending order.

Definition

Class:
Crossings
Method:
getOut
Parameters:
int[], int[]
Returns:
int[]
Method signature:
int[] getOut(int[] positions, int[] angles)
(be sure your method is public)

Constraints

  • positions and angles will contain the same number of elements.
  • Each element of positions will be between 0 and 1000000, inclusive.
  • Each element of angles will be between 1 and 179, inclusive.
  • Each element of positions will be unique.

Examples

  1. {0, 40, 20, 10, 30, 50}

    {105, 40, 30, 75, 135, 75}

    Returns: { 0, 3, 5 }

    The example from the problem statement.

  2. {0, 40, 20}

    {40, 40, 140}

    Returns: { 0, 1 }

  3. {10, 11, 22, 33}

    {10, 10, 10, 10}

    Returns: { 0, 1, 2, 3 }

    No 2 cars' paths will ever cross, so all of them pass all intersections.

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

    {179, 179, 179, 179, 179, 179, 179, 179, 179, 179}

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

  5. {0, 10, 20, 30, 40, 50}

    {45, 90, 135, 179, 86, 84}

    Returns: { 1, 4, 5 }

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

    {179, 178, 133, 100, 7, 6, 5, 4, 3, 2, 1}

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

  7. {10, 20, 30, 40, 50, 1000000}

    {45, 135, 45, 135, 45, 135}

    Returns: { 0, 2, 4 }

  8. {10, 20, 30, 40, 50, 1000000}

    {45, 135, 44, 135, 45, 135}

    Returns: { 0, 4 }

  9. {577197, 828599}

    {86, 63}

    Returns: { 0, 1 }

  10. {100, 20, 30}

    {90, 90, 90}

    Returns: { 0, 1, 2 }

  11. {407512, 911028, 586051, 544198, 863641, 673202, 862126, 112760, 321963, 292344, 143750, 854724, 614765, 258147, 1062, 825873, 215118, 566014, 116465, 770702, 556075, 447206, 712297, 447238, 591545, 643164, 516986, 712946, 194344, 182468, 99640, 96448, 953049, 916296, 232787, 420206, 643618, 462477, 612649, 875848, 639738, 579384, 188755}

    {100, 163, 44, 34, 109, 126, 105, 63, 89, 15, 133, 110, 112, 124, 145, 27, 104, 156, 164, 111, 131, 8, 120, 175, 57, 102, 55, 32, 20, 153, 134, 28, 59, 14, 115, 147, 98, 81, 74, 54, 84, 90, 58}

    Returns: { 14, 16, 30, 32, 40, 41 }

  12. {321846, 982894, 742307, 966130, 67803, 537624, 979074, 896669, 329107, 517232, 297942, 564678, 117504, 388508, 812521, 391704, 544620, 404006, 724103, 638883, 503765, 508389, 804566, 365978, 645180, 383134, 761974, 626028, 337057, 654134, 867885, 611738, 874015, 129724, 631222, 67172, 639349, 327376}

    {119, 144, 145, 95, 110, 143, 162, 26, 113, 73, 46, 25, 154, 12, 77, 103, 55, 99, 41, 56, 20, 51, 142, 161, 134, 111, 65, 155, 42, 45, 98, 177, 10, 15, 94, 17, 47, 160}

    Returns: { 4, 15, 17, 34 }

  13. {150128, 953082, 48060, 344936, 408443, 968857, 547862, 710407, 265004, 538977, 408246, 599261, 700967}

    {78, 160, 2, 169, 108, 141, 104, 26, 40, 69, 1, 75, 15}

    Returns: { 0, 11 }

  14. {875066, 830677, 708821, 542702, 146706, 745796, 31889, 659723, 87565, 970060, 281148, 634299, 944376, 711223, 159246, 533923, 108924, 452082, 800175, 997794, 891215, 467003, 768116, 414318, 39258, 193253, 157635, 906961, 200798, 661672, 930466, 943680, 154651, 583432}

    {169, 97, 104, 46, 72, 63, 7, 143, 36, 13, 70, 106, 28, 116, 82, 109, 125, 80, 123, 150, 107, 171, 157, 71, 177, 34, 161, 103, 113, 127, 9, 52, 47, 73}

    Returns: { 1, 16, 31 }

  15. {727745, 917403, 406925, 316397, 584362, 751763, 754757, 142204, 279696, 932376, 530112, 929207, 530670, 449704, 92081, 77028, 363314, 714146, 404069, 691742, 203710, 630670, 557100, 558050, 997475, 993745, 543696, 709381, 397051, 829173, 62318, 803217, 329496, 9450, 520620, 776410, 358862, 964638, 54576, 884396, 313291, 27627, 400019, 31466, 878959}

    {72, 131, 110, 145, 157, 105, 107, 15, 143, 83, 106, 102, 147, 121, 62, 2, 48, 42, 139, 67, 156, 21, 130, 113, 161, 33, 96, 162, 140, 173, 36, 171, 152, 160, 34, 111, 45, 132, 142, 31, 128, 87, 154, 23, 56}

    Returns: { 9, 25, 33, 41 }

  16. {484780, 196745, 15663, 708178, 73281, 692859, 570380, 798238, 653237, 209994, 288023, 787155, 48009, 356659, 351424, 426092, 558716, 346673, 897548, 583055, 476266, 437884, 498089, 579726, 797884, 870300, 885660, 764848, 783892, 930934}

    {94, 79, 20, 64, 148, 77, 31, 1, 118, 139, 12, 17, 70, 123, 145, 28, 26, 9, 62, 4, 176, 116, 10, 164, 115, 78, 44, 71, 141, 5}

    Returns: { 0, 18, 25, 29 }

  17. {141649, 563474, 219307, 800350, 492622, 104773, 154467, 728794, 657636, 968704, 296580, 297561, 729252, 559504, 974685, 783638, 456817, 763209, 644931, 605940, 517501, 460910, 962187, 258207, 748963, 640042, 656035, 569557, 457062, 130615, 51176, 676340, 323669, 420437, 226694, 170509, 519821, 445004, 347384, 131847, 750912, 658666}

    {93, 132, 172, 84, 66, 21, 162, 148, 82, 20, 156, 137, 8, 75, 168, 13, 30, 38, 106, 22, 111, 104, 124, 131, 164, 120, 54, 145, 68, 179, 139, 37, 31, 70, 33, 105, 36, 35, 69, 55, 9, 158}

    Returns: { 0, 3, 9, 30 }

  18. {459436, 820472}

    {89, 135}

    Returns: { 0 }

  19. {572094, 944915, 877061, 502647, 765774, 261931, 810204, 566052, 534809, 721024, 749566, 936896, 816312}

    {71, 87, 10, 117, 1, 138, 136, 40, 28, 11, 121, 6, 62}

    Returns: { 1, 3, 5 }

  20. {817446, 650302, 488895, 81103, 146146, 940316, 382833, 47833, 245919, 262275, 213234, 866895, 908865, 623041, 177188, 364460, 189915, 637559, 933535, 748992, 888860, 150383, 291175, 997759, 733031, 660832, 753837, 127736, 384665, 937911, 32792, 459007, 234428, 160941, 513248, 772928}

    {39, 6, 139, 41, 100, 145, 153, 60, 97, 178, 156, 116, 146, 67, 66, 7, 101, 72, 22, 59, 161, 37, 169, 23, 80, 40, 114, 112, 76, 3, 155, 26, 48, 53, 123, 172}

    Returns: { 4, 8, 23, 24, 27, 30 }

  21. {807432, 838757, 139528, 20007, 766341, 923473, 786051, 646024, 698992, 512723, 272842, 662611, 269864, 471766, 360014, 487641, 413392, 28295, 611905, 442953, 392545, 10997, 885447, 716340, 616510, 573039, 387238, 959880, 987623, 597078, 416312}

    {90, 15, 157, 55, 140, 168, 106, 39, 51, 101, 45, 54, 131, 156, 42, 35, 81, 160, 103, 6, 179, 11, 111, 47, 31, 21, 89, 172, 9, 61, 93}

    Returns: { 0, 28 }

  22. {422946, 615299, 487411, 974561, 854813, 820607, 890325, 961274, 965736, 130793, 484180, 27042, 465882, 139014, 217838, 816798, 674305, 800943, 862248, 510023, 77031, 364732, 419184, 305186, 762137, 59538}

    {65, 145, 29, 162, 24, 6, 33, 147, 45, 103, 63, 97, 120, 156, 167, 170, 19, 28, 100, 144, 161, 13, 157, 148, 70, 99}

    Returns: { 8, 11 }

  23. {461288, 972745, 609278, 135202, 614499, 363235, 489708, 970687, 243525, 241919, 495334, 550584, 344356, 173297, 224944, 757826, 666703, 276785, 65739, 879349, 45495, 21858, 633553, 618582, 796655, 713778, 888161, 433805, 21448, 43518, 275069, 250518, 630072, 376978}

    {155, 61, 44, 52, 10, 178, 31, 13, 40, 54, 141, 117, 15, 48, 25, 39, 101, 32, 114, 20, 82, 136, 60, 11, 51, 125, 157, 102, 156, 143, 179, 111, 107, 35}

    Returns: { 1, 20, 21, 28 }

  24. {237043, 244261, 416814, 279921, 388745, 211054, 619362, 369684, 999229, 917355, 976681, 206289, 363544, 297225, 102109, 726864, 687838, 5503, 619957, 297620, 764894, 934850, 620312, 803153, 555705, 404104, 421028, 703265, 173234, 193882, 781048, 494057, 984087, 579985, 587899, 418412, 423674, 843967, 289002, 631050, 671432, 977618, 205424, 348638, 827004, 107403, 283324, 844873, 319202, 578480}

    {179, 78, 66, 75, 69, 104, 158, 61, 71, 171, 92, 109, 140, 15, 28, 38, 16, 57, 85, 113, 60, 111, 26, 51, 148, 79, 40, 20, 93, 48, 2, 138, 174, 67, 162, 94, 55, 86, 56, 137, 151, 70, 77, 130, 132, 17, 135, 152, 115, 65}

    Returns: { 8, 10, 28 }

  25. {96425, 192351, 935234, 317157, 349186, 278210, 176343, 67513, 986828, 457934, 183493, 483716, 254959, 284306, 842839, 645814, 7267, 296975, 880529, 724262, 943503, 95845, 78289, 393658, 527441}

    {26, 175, 14, 1, 164, 74, 136, 34, 19, 76, 122, 95, 148, 150, 49, 90, 156, 27, 174, 97, 40, 12, 37, 36, 35}

    Returns: { 6, 8, 10, 11, 14, 15, 16, 20 }

  26. {979607, 756301, 696804, 943950, 864265, 107063, 925151, 914368, 979390, 339700, 908389}

    {78, 121, 48, 87, 95, 144, 143, 134, 88, 149, 101}

    Returns: { 0, 1, 4, 5, 8 }

  27. {355055, 933781, 377289, 216332, 51902, 254413, 148896, 622802, 201462, 780443, 651823, 178330, 986726, 202883, 48761}

    {7, 24, 15, 99, 102, 96, 40, 14, 55, 12, 74, 46, 147, 92, 49}

    Returns: { 4, 10, 13 }

  28. {938124, 291723, 482301, 352537, 830529, 68849, 567106, 521969, 740485, 462940, 562374, 905675, 125519, 115286, 559810, 378878, 762474, 368452, 599388, 647570, 494856, 190009, 111041, 227262, 420724, 453136, 557877, 825223, 945320, 146621, 10978, 550396, 12242, 906606, 156016, 548938, 668229, 415988, 99409, 518343, 336640, 256296, 546920, 489336, 690471, 596422, 944123, 680152, 253114, 104706}

    {148, 88, 82, 118, 75, 115, 18, 149, 67, 158, 94, 173, 71, 130, 113, 146, 153, 12, 134, 65, 43, 147, 141, 50, 101, 32, 23, 136, 51, 31, 98, 44, 58, 41, 126, 121, 116, 11, 60, 171, 56, 30, 66, 47, 112, 105, 49, 128, 61, 4}

    Returns: { 1, 4, 28, 30 }

  29. {349740, 617636, 915698, 241111, 544732, 581015, 523469, 994910, 719251, 106273, 477621, 50395, 119757, 41004, 696979, 723768, 144694, 627678, 999072, 929881, 643910, 588155, 920587, 269179, 640854, 686879, 459675, 725059, 835764, 997855, 321120, 210298, 970862, 255221, 886441, 210951, 771399, 383571}

    {113, 169, 132, 70, 99, 176, 59, 78, 125, 88, 120, 49, 19, 12, 26, 82, 33, 116, 154, 48, 147, 112, 165, 46, 90, 126, 127, 20, 67, 87, 173, 18, 17, 94, 142, 148, 133, 101}

    Returns: { 24, 29 }

  30. {191437, 658738, 922863, 937494}

    {86, 131, 136, 69}

    Returns: { 0, 3 }

  31. {280371, 31841, 776445, 229084, 272640, 785333, 260496, 769575, 356713, 990411, 279910, 606621, 355820, 849834, 433083, 647705, 511188, 580244, 882295, 839412, 329408, 673953, 925284, 781538, 975939, 657049, 269295, 811264, 293360, 936838, 249329, 235984, 251955, 837105, 591232, 384196, 805918, 316055}

    {135, 129, 101, 99, 67, 20, 13, 139, 5, 58, 56, 26, 95, 59, 133, 108, 104, 166, 119, 128, 105, 53, 3, 179, 55, 86, 25, 93, 34, 68, 92, 122, 130, 127, 111, 23, 172, 131}

    Returns: { 1, 3, 9, 29, 30 }

  32. {233510, 136997, 467803, 626793}

    {110, 151, 52, 179}

    Returns: { 0, 1, 2 }

  33. {345161, 110986, 598116, 70338, 407441, 752823, 611899, 577929, 210234, 183449, 328221, 854802, 876407, 453971, 48807, 307531, 226684, 296176, 893483, 863933, 599163, 456698, 837988, 526090, 51590, 883606, 617594, 289807, 396902, 122991, 59428, 352367, 2324, 216800, 502062, 910407, 582455, 723582, 599620, 200384, 794927, 577831, 818970, 788201}

    {113, 93, 152, 148, 131, 124, 111, 72, 158, 176, 96, 46, 108, 122, 115, 171, 101, 49, 92, 37, 157, 31, 27, 130, 100, 112, 179, 95, 9, 150, 160, 99, 47, 1, 168, 147, 18, 24, 154, 69, 137, 12, 59, 3}

    Returns: { 1, 14, 18, 24 }

  34. {378006, 235588, 764363, 449117, 846404}

    {58, 168, 107, 102, 157}

    Returns: { 1, 3 }

  35. {242329, 239641, 671673, 778511, 523179, 429482, 908022, 75094, 398324, 954852, 587506, 404941, 534115, 881427, 770234, 30476, 121363, 348966, 20964, 799795, 794768, 628045, 54567, 714138, 293748, 338356, 522933, 967947, 881583, 962708}

    {55, 178, 77, 169, 109, 88, 30, 130, 9, 58, 91, 40, 3, 29, 97, 54, 152, 98, 63, 1, 21, 52, 99, 138, 14, 165, 145, 38, 69, 81}

    Returns: { 10, 17, 22, 27, 29 }

  36. {895937, 551659, 255627, 658730, 976583, 148355, 879796, 758964, 825111, 121026, 965450, 207652, 202340, 778664, 976157, 649181, 432078, 403774, 785851, 708416, 510656, 85290, 186237, 636033, 341540, 57584, 424147, 407156, 309223, 53271, 610876, 342596, 944753, 26808, 650082, 106537, 613446, 21683, 430077, 351840}

    {20, 162, 105, 128, 34, 111, 8, 50, 101, 114, 151, 99, 116, 103, 172, 59, 10, 118, 37, 142, 152, 44, 158, 88, 138, 4, 132, 83, 52, 77, 117, 17, 166, 5, 39, 135, 97, 1, 164, 126}

    Returns: { 4, 11, 23 }

  37. {789050, 216252, 560026, 147550, 391467, 867021, 420159, 757369, 389163, 368507, 322383, 566715, 469380, 214158, 372464}

    {38, 149, 161, 126, 78, 127, 52, 87, 32, 85, 59, 76, 4, 81, 54}

    Returns: { 3, 7 }

  38. {19565, 866787, 641562, 691000, 488950, 706668, 757927, 565403, 390814, 198284, 76393, 338447, 71468, 510079, 806144, 671837, 430226, 877781}

    {60, 14, 11, 41, 92, 75, 104, 90, 165, 77, 39, 102, 164, 97, 108, 36, 114, 81}

    Returns: { 4, 7, 11, 17 }

  39. {316588, 539692, 988135, 299037, 3408, 143185, 637020, 930781, 887373, 507585, 417816, 172250, 549342, 721452, 779482, 55531, 950464, 658221, 264793, 423230, 195864, 477672, 16336, 170534, 871076, 561887, 705422, 608731, 702297, 888636, 445669, 893563, 136170, 349645, 935359, 453663, 15211, 558929, 832233, 804645, 266227}

    {45, 96, 136, 149, 7, 139, 174, 26, 1, 155, 121, 68, 74, 140, 18, 167, 65, 152, 148, 141, 37, 117, 116, 133, 90, 72, 132, 54, 109, 159, 85, 144, 170, 76, 157, 103, 126, 172, 91, 94, 8}

    Returns: { 16, 22, 24, 36, 38, 39 }

  40. {442837, 280598, 589459, 958742, 406381, 659235, 796199, 341558, 118011, 355258, 357473, 923798, 453404, 746634, 379044, 160202, 127135, 432061, 791831, 509549, 119847, 201530, 983854, 890542, 540262, 443753, 72622, 49045, 185683, 219982, 872436, 561359}

    {146, 38, 11, 139, 30, 156, 29, 94, 157, 86, 46, 21, 72, 20, 171, 35, 152, 12, 143, 26, 150, 179, 8, 1, 40, 113, 125, 124, 75, 133, 141, 74}

    Returns: { 7, 9, 22, 27, 31 }

  41. {518675, 140613, 929262, 831584, 841570, 185456, 878671, 709196, 668526, 358650, 768962, 932464, 758817, 384376, 822004, 132327, 325329, 695919}

    {124, 90, 66, 146, 13, 139, 177, 125, 50, 122, 178, 38, 11, 44, 36, 80, 169, 96}

    Returns: { 1, 2, 11 }

  42. {227582, 422767, 72816, 566383, 81557, 677514, 717566, 346404, 161078, 190298, 84681, 734665, 632860, 19790, 678175, 181899, 992588, 255892, 191856, 196467, 444391, 837412, 272459, 219591, 209614, 818906, 555449, 842934, 32680, 832703, 248132, 35457, 882058, 472861, 744073, 316471}

    {156, 36, 118, 18, 60, 90, 32, 117, 20, 86, 98, 16, 154, 166, 89, 65, 147, 67, 114, 145, 58, 170, 135, 51, 41, 52, 80, 75, 49, 99, 44, 158, 78, 9, 70, 57}

    Returns: { 2, 5, 10, 13, 14, 32 }

  43. {782960, 749764, 445923, 630170, 849228, 415753, 729595, 2968, 595469, 439366, 618613, 432013}

    {19, 108, 44, 20, 8, 70, 35, 6, 158, 48, 137, 102}

    Returns: { 0, 4, 11 }

  44. {239861, 869106}

    {127, 128}

    Returns: { 0 }

  45. {89920, 947348, 498762, 787140}

    {126, 96, 77, 42}

    Returns: { 0, 1 }

  46. {100550, 775851, 865280, 563649, 366632, 993740, 921682, 26602, 840342, 749519, 433010, 571563, 508934, 339280, 746384, 332558, 922223, 260305, 882124, 911237, 904562, 246969, 453768, 16442, 726320, 685184, 162451, 193944, 827163, 596951, 413877, 111277, 269687, 348518, 641569, 714586, 299904, 75876, 196494, 163660, 674656, 831900}

    {115, 156, 173, 166, 4, 8, 155, 154, 122, 135, 101, 46, 116, 176, 43, 148, 71, 89, 129, 145, 147, 158, 6, 22, 24, 19, 175, 69, 134, 95, 26, 31, 92, 98, 48, 139, 44, 143, 138, 55, 100, 27}

    Returns: { 0, 5, 7, 16, 17, 37 }

  47. {153865, 790159, 241637, 123559, 332906, 841750, 624335, 89715, 826332, 738761, 376985, 667025, 501122, 319549, 840512, 165689, 366039, 117063, 624567, 178807, 534099, 44716, 214884, 934037, 104779, 222055, 930832, 509351, 335663, 872300, 663549, 567343, 326410, 531177, 390157, 432048}

    {147, 46, 26, 7, 133, 142, 119, 175, 146, 149, 20, 171, 144, 67, 14, 3, 127, 110, 154, 57, 160, 152, 5, 115, 6, 105, 17, 63, 8, 158, 38, 11, 62, 82, 47, 159}

    Returns: { 17, 21, 25, 33 }

  48. {430291, 630752, 913839, 526476}

    {109, 73, 36, 138}

    Returns: { 0, 1, 2 }

  49. {382194, 997315, 602386, 200476, 129301, 155569, 753553, 28584, 318348, 948385, 216222, 985065, 369330, 418140, 806457, 808870, 773241, 351455, 154678, 766618, 288269, 537886, 747194, 17315, 446608, 365280, 669390, 336421, 961887, 535846, 853373, 722628, 391239, 807571, 173436, 333283}

    {179, 10, 167, 108, 159, 3, 92, 83, 98, 37, 139, 9, 176, 65, 150, 104, 64, 6, 71, 147, 135, 66, 124, 78, 163, 70, 121, 148, 69, 7, 73, 138, 77, 57, 26, 59}

    Returns: { 1, 6, 28, 30 }

  50. {126430, 725231, 271686, 524459, 873700, 498420, 500683, 515572, 162177, 876656, 246730, 583410, 543316, 890829, 702789, 468867, 9787, 375978, 29868, 93303, 264009, 257327, 390962, 925583, 405479, 504535, 157518, 995740, 370280, 53686, 990082, 866388, 365933, 893914, 615238, 377469, 431181, 463051, 331809, 583086, 316861, 610902, 71800, 85564, 479959}

    {148, 168, 152, 36, 158, 23, 104, 3, 134, 110, 133, 171, 143, 106, 65, 108, 117, 77, 22, 27, 122, 151, 160, 57, 37, 155, 11, 6, 118, 4, 103, 50, 164, 136, 84, 95, 79, 163, 165, 31, 28, 54, 156, 132, 20}

    Returns: { 16, 27, 34, 35 }

  51. {620920, 382818, 756484, 515567, 969720, 426488, 781835, 491871, 684870, 629284, 282247, 196110, 645042, 688169, 184060, 967338, 711602, 818455, 321885, 534802, 312304, 750454}

    {2, 85, 66, 4, 167, 158, 112, 153, 34, 59, 42, 145, 8, 88, 63, 129, 119, 89, 15, 60, 58, 50}

    Returns: { 17 }

  52. {784258, 183708, 443396, 442787, 280932, 964343, 278884, 123053, 257882, 358606, 257107, 596965, 259323, 143164, 555806, 214494, 177098, 229188, 759317, 517880, 568957, 683564, 82185, 619290, 545030, 669750, 696767, 936489, 581584, 417895, 510198, 671813, 566667, 44889, 715890, 149131}

    {127, 7, 83, 110, 69, 80, 86, 50, 10, 172, 57, 34, 136, 156, 84, 31, 100, 114, 177, 128, 24, 148, 17, 18, 119, 129, 53, 158, 28, 152, 37, 135, 112, 85, 6, 4}

    Returns: { 5, 6, 14 }

  53. {4415, 655470, 430850, 569513, 857207, 837869, 605982, 277624, 599160, 644101, 179563, 969717, 601026, 279797, 217486, 254916, 478371, 782037, 63134, 988420, 505702, 195740, 631063, 60457, 533984, 36984, 239289, 551930, 188067, 187411, 996260}

    {160, 116, 108, 166, 57, 134, 6, 159, 79, 27, 54, 62, 31, 158, 87, 18, 98, 32, 80, 84, 76, 95, 46, 55, 161, 21, 48, 14, 34, 154, 92}

    Returns: { 0, 21, 30 }

  54. {799337, 675911, 595722, 199294}

    {72, 31, 36, 110}

    Returns: { 0, 3 }

  55. {162844, 523143, 465633, 176786, 544135, 527745, 771963, 324707, 630557, 630431, 691211, 333581, 331257, 473620, 67884, 905244, 465923, 983019, 350794, 70498, 610935, 334610, 973862, 476723, 139430, 265967, 970261, 411185, 423853, 251452, 724393, 320037, 978771, 276237, 595012, 207942, 198732, 778408, 874822, 237987, 693422, 270002, 20441, 839249}

    {61, 11, 23, 8, 176, 93, 27, 131, 107, 114, 56, 64, 38, 165, 163, 116, 95, 29, 141, 132, 154, 110, 151, 98, 16, 135, 18, 112, 65, 111, 133, 73, 147, 129, 7, 10, 100, 88, 91, 13, 143, 4, 6, 57}

    Returns: { 5, 14, 16, 17, 19, 36, 38 }

  56. {633390, 777992, 814834, 481565, 132546, 624945, 641279, 520468, 607905, 482163, 769502, 800751, 850899, 655401, 271048, 665015, 841960, 778982, 342887, 69271, 181736, 401583, 673413, 15514, 991635, 520849, 879476, 45151, 703926, 103412, 4664}

    {173, 179, 59, 83, 166, 144, 46, 74, 111, 147, 105, 30, 63, 143, 136, 153, 103, 38, 67, 80, 155, 100, 93, 49, 77, 45, 125, 134, 97, 88, 121}

    Returns: { 24, 29, 30 }

  57. {578571, 1977, 100624, 910180, 739028, 293469, 188545, 679636, 108377, 336024, 261993, 16573, 655502, 491966, 616965, 68503, 645065, 461016, 289686, 207240, 622538, 837845}

    {106, 23, 173, 145, 115, 60, 42, 67, 127, 40, 37, 157, 15, 13, 120, 61, 128, 131, 167, 162, 142, 121}

    Returns: { 0, 7 }

  58. {10, 20}

    {89, 91}

    Returns: { 0 }

  59. {10,20,0}

    {40,140,40}

    Returns: { 0, 2 }

  60. {10,0}

    {140,40}

    Returns: { 0 }

  61. {10,20,30,0}

    {40,140,140,40}

    Returns: { 0, 3 }

  62. {0,2,3,1}

    {40,140,140,40}

    Returns: { 0 }

  63. { 1, 0, 2 }

    { 100, 80, 100 }

    Returns: { 0, 2 }

  64. { 1, 0, 2 }

    { 135, 45, 135 }

    Returns: { 0, 2 }

  65. { 1, 0, 2 }

    { 120, 60, 120 }

    Returns: { 0, 2 }

  66. { 20, 10, 30 }

    { 135, 45, 135 }

    Returns: { 0, 2 }

  67. { 1, 2, 0 }

    { 60, 120, 60 }

    Returns: { 0, 2 }

  68. { 0, 1000000 }

    { 1, 179 }

    Returns: { 0 }

  69. { 10, 0, 20 }

    { 100, 80, 100 }

    Returns: { 0, 2 }

  70. { 100, 10, 110, 20, 130, 40, 140, 150, 50, 500, 60 }

    { 91, 89, 91, 89, 91, 89, 91, 89, 91, 89, 89 }

    Returns: { 0, 2, 4, 6, 7, 9 }

  71. { 0, 100, 50, 20, 70, 10, 80, 2, 62, 5 }

    { 1, 179, 40, 20, 60, 150, 120, 140, 33, 67 }

    Returns: { 4, 7, 9 }

  72. { 60, 50 }

    { 135, 45 }

    Returns: { 0 }

  73. { 10, 20, 0 }

    { 60, 120, 60 }

    Returns: { 0, 2 }

  74. { 1, 2, 3, 7, 6, 4 }

    { 45, 90, 135, 1, 179, 1 }

    Returns: { 1, 3 }

  75. { 2, 1, 3 }

    { 91, 89, 91 }

    Returns: { 0, 2 }

  76. { 0, 1 }

    { 50, 40 }

    Returns: { 0, 1 }

  77. { 100, 50 }

    { 45, 135 }

    Returns: { 0, 1 }

  78. { 50, 70, 90 }

    { 45, 132, 134 }

    Returns: { 1 }

  79. { 1, 0, 9, 10, 8 }

    { 150, 150, 60, 120, 60 }

    Returns: { 0, 1, 2, 4 }

  80. { 2, 1, 3 }

    { 135, 45, 135 }

    Returns: { 0, 2 }

  81. { 1, 2, 0 }

    { 45, 135, 45 }

    Returns: { 0, 2 }

  82. { 1, 0, 2 }

    { 100, 80, 100 }

    Returns: { 0, 2 }

  83. { 1, 0, 2 }

    { 135, 45, 135 }

    Returns: { 0, 2 }

  84. { 1, 0, 2 }

    { 120, 60, 120 }

    Returns: { 0, 2 }

  85. { 20, 10, 30 }

    { 135, 45, 135 }

    Returns: { 0, 2 }

  86. { 1, 2, 0 }

    { 60, 120, 60 }

    Returns: { 0, 2 }

  87. { 0, 1000000 }

    { 1, 179 }

    Returns: { 0 }

  88. { 10, 0, 20 }

    { 100, 80, 100 }

    Returns: { 0, 2 }

  89. { 100, 10, 110, 20, 130, 40, 140, 150, 50, 500, 60 }

    { 91, 89, 91, 89, 91, 89, 91, 89, 91, 89, 89 }

    Returns: { 0, 2, 4, 6, 7, 9 }

  90. { 0, 100, 50, 20, 70, 10, 80, 2, 62, 5 }

    { 1, 179, 40, 20, 60, 150, 120, 140, 33, 67 }

    Returns: { 4, 7, 9 }

  91. { 60, 50 }

    { 135, 45 }

    Returns: { 0 }

  92. { 10, 20, 0 }

    { 60, 120, 60 }

    Returns: { 0, 2 }

  93. { 1, 2, 3, 7, 6, 4 }

    { 45, 90, 135, 1, 179, 1 }

    Returns: { 1, 3 }

  94. { 2, 1, 3 }

    { 91, 89, 91 }

    Returns: { 0, 2 }

  95. { 0, 1 }

    { 50, 40 }

    Returns: { 0, 1 }

  96. { 100, 50 }

    { 45, 135 }

    Returns: { 0, 1 }

  97. { 50, 70, 90 }

    { 45, 132, 134 }

    Returns: { 1 }

  98. { 1, 0, 9, 10, 8 }

    { 150, 150, 60, 120, 60 }

    Returns: { 0, 1, 2, 4 }

  99. { 2, 1, 3 }

    { 135, 45, 135 }

    Returns: { 0, 2 }

  100. { 1, 2, 0 }

    { 45, 135, 45 }

    Returns: { 0, 2 }

  101. { 1, 0, 2 }

    { 100, 80, 100 }

    Returns: { 0, 2 }

  102. { 1, 0, 2 }

    { 135, 45, 135 }

    Returns: { 0, 2 }

  103. { 1, 0, 2 }

    { 120, 60, 120 }

    Returns: { 0, 2 }

  104. { 20, 10, 30 }

    { 135, 45, 135 }

    Returns: { 0, 2 }

  105. { 1, 2, 0 }

    { 60, 120, 60 }

    Returns: { 0, 2 }

  106. { 0, 1000000 }

    { 1, 179 }

    Returns: { 0 }

  107. { 10, 0, 20 }

    { 100, 80, 100 }

    Returns: { 0, 2 }

  108. { 100, 10, 110, 20, 130, 40, 140, 150, 50, 500, 60 }

    { 91, 89, 91, 89, 91, 89, 91, 89, 91, 89, 89 }

    Returns: { 0, 2, 4, 6, 7, 9 }

  109. { 0, 100, 50, 20, 70, 10, 80, 2, 62, 5 }

    { 1, 179, 40, 20, 60, 150, 120, 140, 33, 67 }

    Returns: { 4, 7, 9 }

  110. { 60, 50 }

    { 135, 45 }

    Returns: { 0 }

  111. { 10, 20, 0 }

    { 60, 120, 60 }

    Returns: { 0, 2 }

  112. { 1, 2, 3, 7, 6, 4 }

    { 45, 90, 135, 1, 179, 1 }

    Returns: { 1, 3 }

  113. { 2, 1, 3 }

    { 91, 89, 91 }

    Returns: { 0, 2 }

  114. { 0, 1 }

    { 50, 40 }

    Returns: { 0, 1 }

  115. { 100, 50 }

    { 45, 135 }

    Returns: { 0, 1 }

  116. { 50, 70, 90 }

    { 45, 132, 134 }

    Returns: { 1 }

  117. { 1, 0, 9, 10, 8 }

    { 150, 150, 60, 120, 60 }

    Returns: { 0, 1, 2, 4 }

  118. { 2, 1, 3 }

    { 135, 45, 135 }

    Returns: { 0, 2 }

  119. { 1, 2, 0 }

    { 45, 135, 45 }

    Returns: { 0, 2 }


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: