Statistics

Problem Statement for "NoRightTurnDiv2"

Problem Statement

Roger the Robot has been sent to explore a planet. The surface of the planet can be thought of as a two-dimensional plane. You are given two int[]s x and y. The planet has N interesting points described by these int[]s. The i-th interesting point has coordinates (x[i], y[i]). No three interesting points will be collinear.

Roger will choose a permutation of {0,1,...,N-1}, and will visit the points in that order. Roger will travel in a straight line in between points. There are two conditions he must follow:

  1. He must never cross his own path (that is, if we look at the line segments formed by the path, no two segments strictly intersect).
  2. Due to rather unfortunate oversight, Roger is incapable of making any right turns. This means that for any three consecutive points that he visits, these three points constitute a counter-clockwise orientation.

Your job is to find a path that Roger can take. If there is no valid path, return an empty int[]. Otherwise, return an int[] containing a permutation of 0,...,N-1, representing a valid path that Roger can take.

Definition

Class:
NoRightTurnDiv2
Method:
findPath
Parameters:
int[], int[]
Returns:
int[]
Method signature:
int[] findPath(int[] x, int[] y)
(be sure your method is public)

Constraints

  • x will contain between 2 and 50 elements, inclusive.
  • y will contain exactly the same number of elements as x.
  • Each element of x,y will be between -1,000 and 1,000, inclusive.
  • All pairs (x[i], y[i]) will be distinct.
  • No three points will be collinear.

Examples

  1. {-10, 0, 10}

    {10, -10, 10}

    Returns: {0, 1, 2 }

    The points form a triangle. Any of the following return values will be accepted: {0,1,2},{1,2,0},{2,0,1}

  2. {0,0,-3,-3,3,3}

    {-1,1,-3,3,-3,3}

    Returns: {0, 4, 5, 3, 2, 1 }

    Here is a picture of the points: Here is an example of a different valid solution. This would correspond to a return value of {1,5,3,2,4,0}

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

    {1,4,9,16,25,36,49,64,81,100}

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

  4. {0, 2,-2, 4,-4, 2,-2, 0}

    {1, 2, 2, 4, 4, 6, 6, 5}

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

  5. {-76,98,83,58,-15,94,21,55,80,84,-39,-90,-46,100,-80,-49,-2,-70,36,48,88,10, 55,-56,22,67,31,81,100,-39,64,-62,-7,45,-82,-24,51,-33,53,11,20,-74,-83,47, 9,39,42,63,-97,94}

    {-90,68,91,-92,-6,88,99,10,39,-69,-61,-4,71,-5,90,-51,21,-53,-21,-86,41,-9, 42,-23,-4,12,94,-59,55,18,70,-88,-86,-17,-97,-33,87,80,91,-80,-79,-79,-78, -99,57,67,-52,-46,61,-10}

    Returns: {39, 32, 40, 31, 19, 27, 47, 46, 0, 34, 43, 3, 9, 13, 28, 1, 5, 2, 6, 14, 48, 42, 41, 49, 20, 38, 26, 37, 12, 11, 17, 10, 33, 25, 8, 30, 36, 44, 29, 23, 15, 18, 7, 22, 45, 16, 4, 35, 24, 21 }

  6. {-443,887,-16,-388,-245,652,758,640,589,-75,-827,-428,344,-920,-340,-80,-753,546,202,701,-323,804,-603,452,495,-956,-628,417,798,-666,-542,363,11,-558,-466,166,-645,-568,886,902,-933}

    {12,-220,-421,176,-21,-419,-55,8,-12,-278,-7,12,-27,-615,26,-408,-559,-17,-60,-3,79,15,-11,7,-22,-3,83,1,-69,6,-1,485,26,-1,-812,-430,-58,70,403,1,300}

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

  7. {258,960,661,317,-943,-976,-226,-939,-703,166,423,-119,-616,-437,-414,-157,136,-942,-684,275,-487,974,657,-305,632,-499,-399,674,983,-825,-171,-991,424,-558,616,494,-189}

    {-1,3,3,30,1,-5,718,-527,-136,-9,488,-21,19,-114,-2,-74,580,12,-842,57,-434,-140,534,22,24,712,-1,6,-18,-643,7,736,-813,553,127,-122,-563}

    Returns: {26, 14, 11, 30, 23, 12, 13, 15, 9, 33, 8, 20, 19, 10, 16, 25, 17, 4, 29, 0, 22, 6, 31, 5, 7, 18, 32, 21, 28, 1, 34, 3, 36, 35, 27, 24, 2 }

  8. {-615,549,-261,673,433,-903,-468,-881,36,-61,-936,-573,-887,195,208,457,393,562,106,-976,548,-726,692}

    {4,13,-552,-203,-70,-27,428,51,143,-12,-102,99,14,22,103,-5,-274,10,2,-53,-383,-2,384}

    Returns: {8, 11, 12, 0, 14, 22, 6, 7, 19, 10, 2, 20, 3, 17, 1, 13, 21, 5, 16, 15, 18, 9, 4 }

  9. {134,-1,-834,132,-42,88,-119,-199,94,166,-489,10,-338,235,-180,9,-265,-34,3,-9,-7,255,-8,-15,1,-42,2,142,-10,23,-7,-63,-22,146,28,-722}

    {984,383,-481,713,407,876,-874,963,135,792,897,281,-991,800,-486,781,514,-133,-991,-634,-115,-313,-45,349,-93,872,267,-970,108,-649,-661,415,-775,895,-821,-605}

    Returns: {22, 17, 20, 28, 31, 19, 30, 24, 23, 4, 16, 14, 6, 32, 29, 1, 25, 7, 10, 2, 35, 12, 18, 27, 21, 13, 0, 15, 26, 34, 9, 33, 5, 11, 8, 3 }

  10. {425,-340,962,-5,-50,-18,51,111,465,1,573,-229,-10,16,-13,-169,-182,-6,-24,-302,-4,6,-2,-27,32,-177,-7,599,-7,-54,185,-231,-206,-147,-418,80,8,-5,81,-98,-1}

    {169,302,809,951,-222,-436,-395,-580,-967,366,-81,-181,-746,-571,-258,583,-937,749,-240,505,746,945,566,306,-99,-364,479,-232,657,207,172,-646,-818,165,-731,153,604,2,760,951,-754}

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

  11. {-60,11,8,2,810,-32,-33,-8,-126,2,905,11,107,-11,38,23,-3,-16,29,6,4,148,362,-416,-1,-662,-9,158,69,-267,-9,9,-1}

    {4,205,-814,-441,298,-188,-125,-902,647,467,403,383,587,-768,-68,-422,-14,-672,205,-655,-872,283,418,-168,-453,-490,-710,420,-57,642,729,-435,524}

    Returns: {14, 3, 31, 15, 28, 18, 24, 19, 21, 1, 16, 26, 2, 22, 27, 11, 6, 5, 17, 13, 20, 4, 12, 9, 0, 7, 10, 30, 29, 25, 23, 32, 8 }

  12. {757,5,395,-222,-153,-419,633,-588,486,-138,-770,580,600,-732,-56,913,-701,-168,-317,-440,257,-296,819,821,572,-277,-653,123,807,551,-575,-611,602,647,-853,564,-562,-847}

    {-531,-386,-99,-659,33,-1,-7,-1,8,-19,-129,-28,-565,-24,28,-9,-8,316,15,38,22,-19,374,-2,-451,2,70,-28,19,-853,-9,-176,6,96,10,-6,-22,812}

    Returns: {25, 9, 27, 35, 8, 14, 18, 5, 21, 2, 11, 6, 32, 20, 4, 19, 30, 24, 23, 28, 33, 17, 26, 7, 1, 12, 0, 15, 22, 37, 34, 10, 3, 29, 36, 16, 13, 31 }

  13. {427,256,502,-796,95,-409,-64,190,720,61,-21,-273,79,842,-307,-395,356,-623,660,242,-300,-217,-452,868,-756,-58,-600,733,-793,63,207,971,-199,926}

    {-22,68,-98,-309,127,441,-11,15,47,65,19,-490,-432,-407,-1,6,-322,591,-89,-192,69,96,55,-5,-6,9,-322,-231,1,50,-61,168,1,762}

    Returns: {9, 29, 1, 4, 21, 20, 10, 7, 8, 5, 22, 25, 0, 23, 31, 33, 17, 28, 3, 11, 13, 18, 6, 32, 15, 24, 26, 12, 27, 2, 30, 14, 16, 19 }

  14. {-452,918,-226,949,373,-741,-730,-432,86,412,757,-726,-975,188}

    {12,5,-15,-48,-175,90,2,6,-1,-5,621,-20,73,-2}

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

  15. {237,-4,1,-17,-638,-36,1,206,-3,171,241,13,-2,-60,617,82,174,-7}

    {-365,261,436,876,630,198,993,491,724,-993,767,637,-115,-735,-135,-460,572,-975}

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

  16. {-57,51,1,29,81,-72,266,-17,35,-119,744,-24,12,-16,-2,1,853,46,-3,3}

    {-474,932,126,-546,-907,-278,-133,75,688,-844,33,765,906,-11,897,-763,-767,-385,-282,559}

    Returns: {17, 2, 13, 18, 3, 6, 8, 7, 0, 15, 4, 16, 10, 1, 14, 11, 9, 19, 12, 5 }

  17. {446,-975,-115,-971,202,284,-165,-667,948,377,-18,-821,-798,695,16}

    {-273,146,80,-37,13,94,1,-4,570,-71,-243,46,2,6,-26}

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

  18. {797,656,-651,365,436,-168,605,563,556,820,587,336,501,-247,-143,-779,-367,-837,-421,267,-875}

    {1,-74,206,83,-580,2,-168,-1,21,3,896,-8,49,-514,472,-3,69,19,11,22,16}

    Returns: {12, 3, 8, 14, 16, 0, 9, 10, 2, 20, 13, 4, 1, 7, 19, 17, 15, 6, 11, 18, 5 }

  19. {35,2,778,-793,-73,-5,4,8,2,1,-3,-1,-47,-5,7,31,-367,-11,-293,215,136,15,260,785,52,-6,481,3,-212,8}

    {484,-923,-868,-228,-632,-7,296,-308,-583,697,-942,638,-334,211,-325,549,-935,651,-636,-839,-927,379,-148,-199,-607,-321,973,317,-621,-790}

    Returns: {25, 5, 13, 12, 14, 6, 27, 28, 4, 8, 7, 21, 11, 17, 18, 1, 0, 15, 9, 3, 16, 10, 2, 23, 26, 24, 29, 20, 19, 22 }

  20. {-164,75,327,190,85,62,8,164,-59,278,2,-6,5,557,-17,7,18,-976,-223,-4,-2,-3,-13,-207,196,-133,8,443,3,-105,-162,-49,1,56,-580,520,424,812,-2,-32,-552,-672,-733,-601,-101,-1,-8}

    {-872,-930,362,-575,-431,-525,814,585,-508,-2,606,438,676,965,659,-47,-107,343,495,-928,877,-36,93,802,910,-39,560,-14,-64,-393,131,-63,-373,-20,-586,974,255,788,439,610,-584,964,-399,501,-874,539,-436}

    Returns: {38, 45, 11, 22, 21, 10, 31, 28, 15, 26, 12, 14, 39, 30, 25, 16, 6, 18, 29, 33, 7, 24, 20, 23, 43, 40, 8, 32, 2, 13, 35, 41, 17, 42, 34, 0, 19, 1, 37, 36, 46, 44, 3, 27, 9, 4, 5 }

  21. {613,166,31,3,25,1,149,21,-1,-4,-940,-277,506,-158,-16,-89,390,-4,-18,-3,-14,1,-2,-348,-65,-815,640,2,-18,-11,7,27,111}

    {808,-937,75,772,704,-456,-1000,-73,781,159,528,-718,974,-496,-550,-645,-298,-704,-262,648,-474,682,-996,133,-198,-117,-980,-610,-707,700,-726,508,-645}

    Returns: {31, 4, 21, 19, 2, 16, 3, 8, 29, 9, 7, 1, 26, 0, 12, 10, 25, 11, 22, 6, 32, 18, 24, 23, 13, 15, 28, 30, 5, 20, 14, 17, 27 }

  22. {-6,40,-39,3,5,46,2,1,-5,-4,-304,6,-44,510,-2,2,12,31,637,-2,57,101,245}

    {418,57,-97,754,539,215,-677,-259,205,-430,3,-547,-649,88,-401,989,-347,-247,-502,-445,-448,-116,199}

    Returns: {14, 16, 7, 9, 19, 17, 1, 8, 2, 11, 20, 21, 5, 0, 10, 12, 6, 18, 13, 15, 3, 4, 22 }

  23. {394,42,-16,-62,117,-272,-813,180,-862,-416,-3,13,92,-9,29,-14,16,-267,-1,-7,15,-738,-2,-94,-7,3,208,14,-111,152,172,12,-24,245,-59}

    {-68,305,178,-798,698,-232,-579,-374,-309,-653,480,867,-810,-543,948,-722,-350,-331,-791,692,-248,-56,976,-552,-273,-687,-280,-729,-795,120,732,581,-41,-266,-523}

    Returns: {2, 10, 19, 5, 17, 32, 31, 11, 9, 23, 1, 14, 22, 21, 8, 6, 28, 12, 0, 30, 4, 34, 3, 18, 33, 29, 24, 15, 27, 7, 26, 20, 13, 25, 16 }

  24. {-52,-12,2,-28,1,645,5,-54,-73,25,-1,-6,4,139,3,-5,-19,553,-1,-26,260,-4,41,745,-9,-2,7,10}

    {-311,910,-930,-349,-949,-705,876,-825,172,-918,373,60,879,345,-329,574,441,982,-898,-615,-572,687,-337,218,-841,-731,-581,-780}

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

  25. {-14,2,5,-125,9,-133,-15,38,-755,276,-252,-6,-17,17,-327,-642,12,-9,-55,-135,17,-42,100,9,-16,-5,189,-1,134,78,-12,-62,6,-104,146,-7,18,-4,-1,-582}

    {-660,-717,-834,177,799,421,438,543,-205,-586,503,-925,753,-48,-406,-680,135,379,-803,458,478,-278,-26,-900,845,278,111,14,82,-9,-168,773,-656,-930,481,300,565,-568,-200,-797}

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

  26. {-82,-15,-241,-949,86,215,11,33,2,7,-32,-4,901,588,799,58,-10,470,-706,-139,-227,84,-213,-180,376,2,3,1,-575,11,-6,-1,-608,-324,201,1,340,-112,15,3,-502,-114,-1,-21,113,-8,19,-80}

    {-5,-681,446,929,805,505,87,745,-978,183,-776,946,769,145,286,-172,-642,-869,81,205,-850,901,-269,-285,707,651,64,367,511,-684,-96,418,-338,736,-247,981,502,681,714,-389,-261,-276,864,235,496,-539,73,-904}

    Returns: {2, 22, 19, 33, 28, 18, 40, 23, 41, 0, 37, 3, 32, 20, 8, 17, 14, 12, 35, 11, 47, 13, 24, 21, 42, 43, 10, 29, 34, 36, 4, 7, 38, 25, 31, 1, 5, 44, 27, 30, 16, 15, 9, 26, 45, 39, 46, 6 }

  27. {79,-516,-946,-341,-759,184,761,801,283,-533,-356,-847,-495,974,994,291,675,153,-353,-177,-736,610,64,877,371,-573,-971,-770,-887,303,720,595,704,-128,610,-152,179,877,-51,758}

    {44,116,-603,1,2,-67,6,436,8,-150,-6,7,433,-156,-78,262,26,10,7,-9,-6,23,1,-604,-474,280,-13,-8,63,743,326,-169,6,-14,141,-5,-42,-14,940,22}

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

  28. {-32,-631,-966,831,-758,798,-451,283,32,-527,-656,-595,-960,515,-927,-26,288,494,-841,602,734,-661,429,-645,354,733,-779,-68,-9,567,35,833,-378,964,246,-250,-638}

    {237,325,-3,716,-834,-117,441,-3,1,-4,74,15,1,-415,105,-20,8,-813,429,7,-5,580,248,-200,-58,-1,-225,256,-114,-60,7,-236,-2,3,-72,303,-225}

    Returns: {35, 10, 11, 9, 32, 27, 6, 1, 14, 12, 26, 23, 0, 21, 18, 2, 4, 17, 31, 33, 3, 36, 13, 5, 25, 22, 15, 28, 29, 20, 19, 16, 30, 8, 34, 24, 7 }

  29. {-614,816,-239,135,409,-708,64,52,501}

    {1,-259,141,158,-467,423,-827,334,391}

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

  30. {210,-260,222,985,56,755,-672,856,-279,-46,-985,-878,921,806,107,-750,-41,-705,-476,-958,-517,650,650,-8,962,-164,999,97,-563,561,383,-947,50,-661,572,624,452,140,-490,27,-789,244,-224,-417,329,-538,160,-752}

    {-375,301,-270,745,-980,434,1,215,-1,-127,272,626,-725,0,296,59,-727,538,-362,497,-250,-36,-381,151,918,-612,682,883,327,842,502,41,621,87,-677,326,937,-187,8,2,-154,707,127,-34,439,278,625,841}

    Returns: {35, 21, 7, 5, 30, 44, 2, 22, 13, 3, 29, 41, 0, 34, 12, 26, 24, 36, 47, 19, 10, 31, 40, 4, 37, 46, 27, 11, 15, 18, 16, 14, 32, 17, 6, 20, 25, 39, 23, 1, 28, 33, 43, 9, 42, 45, 38, 8 }

  31. {-187,-650,0,-48,-382,-273,-59}

    {-964,249,608,-764,-919,527,-743}

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

  32. {115,-409,-215,611,645,48,33,151,130,325,17,-28,-689,-338,-144,538,-876,-897,-423,4,-349,-560,-209,-584,782,-666,156,-186,175,575,-986,642,-901,173,-822,-146,-18,-773,896,570,-592}

    {-943,-6,486,2,-440,-736,-357,-741,155,855,-99,-36,-200,1,-685,218,-351,38,-566,63,-47,-619,315,34,-402,783,46,49,-519,-192,-914,729,501,-665,-453,-290,-671,-395,-504,-6,-497}

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

  33. {-357,366,797,598,642,608,536,389,-281,-871,721,-709,-631,191,-859,-883,-755,823,-27,755,946}

    {-137,-302,216,-10,16,-534,527,-303,-1,381,-615,-59,-300,86,829,12,-118,476,26,-625,80}

    Returns: {7, 4, 3, 1, 5, 10, 2, 13, 0, 12, 19, 20, 17, 14, 15, 16, 18, 6, 9, 11, 8 }

  34. {-245,-705,374,-823,-193,-817,-89,-697,-287}

    {571,1,-181,33,-95,323,-163,265,-14}

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

  35. {468,-782,-908,734,-633,795,-645,-172,302,899,8,800,178,-176,138,-376,-921,-42,37,-178,-938,709,585,-654,807,700,-785,220,346,-4,884,-943,679,108,640,-423,788,922,868,273}

    {890,99,383,97,-7,684,-546,478,525,803,121,-899,10,-678,570,-34,-307,-321,-416,-138,-359,-139,-890,-2,7,42,390,318,895,822,777,139,167,0,228,527,-83,105,691,-419}

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

  36. {-164,211,-405,-95,-693,887,-39,-475,-753,261,-505,-629,-422,287,-674,867,-310,-852,-518,-379,-904,-502,-397,9,276,238,204,809}

    {911,980,74,922,-246,-404,723,434,291,-195,585,702,-764,440,-762,-50,161,-336,659,-1,-429,-443,291,-690,918,-504,-31,87}

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

  37. {66,121,-959,-71,44,718,18,-520,934,0,-595,-937,-869,-584,19,-777}

    {172,291,160,-408,504,957,-322,-12,700,-905,-486,-134,-97,-935,-342,580}

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

  38. {792,-560,-360,631,717,967,426,-970,-499,-491,992,-823,-825,-415,-519,559,1}

    {339,-18,31,-844,-94,-24,16,231,68,115,-60,-71,-508,30,-335,-743,713}

    Returns: {11, 14, 1, 7, 12, 3, 10, 0, 16, 9, 8, 15, 5, 6, 2, 13, 4 }

  39. {418,884,-140,-24,504,-1,365,-9,91}

    {949,-857,684,223,-619,587,520,-824,148}

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

  40. {-223,412,767,-842,-683,-381,885,224,-863,514}

    {2,743,733,0,24,439,-58,2,-210,502}

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

  41. {652,505,844,-742,-566,-164,-808,168,-996,-320,508,-98,-742,-786,-437,717,243,665,396,-605,843,-100,-273,856,-241,-754,-607,-139,-748,-990,-683,725,374,-800,720,-620,208,890,-52,798,58,975,50,-215,791,-256,-964,698,-389}

    {63,-584,0,75,-434,302,-289,-8,433,-2,-136,540,23,-112,-961,15,-554,613,996,-709,713,-17,260,-358,-76,-117,727,-11,622,-660,-405,-749,-217,359,42,8,-453,0,992,822,61,-34,-77,-689,-815,6,-333,-175,-171}

    Returns: {45, 9, 27, 40, 5, 22, 3, 12, 35, 21, 7, 17, 11, 33, 13, 25, 24, 0, 20, 39, 18, 38, 26, 28, 8, 29, 14, 44, 41, 37, 34, 42, 48, 6, 46, 19, 31, 23, 2, 15, 30, 43, 1, 47, 10, 4, 16, 32, 36 }

  42. {-959,247,-144,145,184,467,-789,883,-227,-11,723,934,-435,-825,652,-875,-81,-759,582,700,-523,-631,-613,-11,211,-166,-405,-820,-506}

    {46,872,-163,21,8,32,-693,-285,909,134,24,832,-17,-171,0,974,-6,147,132,183,-947,498,58,-59,203,46,-53,0,-796}

    Returns: {17, 22, 12, 8, 21, 27, 13, 26, 25, 1, 15, 0, 6, 20, 7, 11, 9, 28, 10, 19, 24, 16, 2, 14, 18, 3, 23, 5, 4 }

  43. {151,-61,-948,-75,388,63,891,-8,311}

    {377,-119,-584,540,24,494,-79,333,-578}

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

  44. {-555,-790,-188,64,674,-630,-632,-23,802,163,214,929,961,-639,802,282,564,-913,-534,-717,-611,102,617,-784,-178,233}

    {725,144,-217,793,-642,49,66,509,546,-726,450,35,511,2,-609,-396,-120,-72,580,175,56,233,-892,-254,56,-133}

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

  45. {128,14,375,-368,499,-134,289,0,-23,-169,190,655,39,3,811,6,-3,-52,-852,191,-604,-50,364,-550,119,-137,-249}

    {123,655,273,580,313,-104,-124,607,-783,-789,708,959,59,-34,-342,-923,-241,71,236,-986,-469,-50,-91,224,-65,478,481}

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

  46. {-567,391,-785,579,596,-494,-895,-692,587,367,837,-951,-637,534,482,199,-162,-26,-628,760,975,213,764,-803}

    {94,208,178,186,-215,446,482,407,770,-314,-145,120,86,28,-161,196,-221,959,-327,727,-55,693,306,214}

    Returns: {1, 15, 13, 3, 5, 14, 4, 22, 8, 21, 7, 0, 9, 10, 20, 19, 17, 6, 11, 18, 16, 23, 2, 12 }

  47. {-375,997,372,-140,18,-620,548,-782,-31,122,270,470,35,514,-428,-182,331,0,-945,-916,-799,-189,-765,202,-602,858,-38,0,19,825,508,-26,-98,-147,-43,-16}

    {304,-52,387,28,25,-511,-523,-588,127,753,893,-529,121,-912,-4,-821,-227,-998,469,-744,-658,-539,-444,137,573,-738,-449,462,311,708,-753,306,-128,246,-178,-478}

    Returns: {5, 7, 21, 14, 22, 20, 15, 26, 0, 24, 18, 19, 17, 13, 25, 1, 29, 10, 9, 33, 3, 35, 30, 6, 2, 27, 31, 32, 34, 11, 23, 28, 8, 4, 16, 12 }

  48. {255,-322,-545,75,-276,141,31,868,70,654,-301,484,-605,-545,-703,250,338,129,282,292,812,630,-736,556,-823,-874,735,877,-173,-30,248,-616,-854,-678,584,909,41,141}

    {-27,-376,-394,-509,461,427,29,29,-10,-299,-981,-411,119,336,-828,650,428,-64,-281,12,-382,123,53,-386,-572,-38,10,-874,708,248,-678,-372,572,174,-12,-142,284,132}

    Returns: {9, 34, 19, 23, 20, 26, 21, 16, 5, 36, 0, 27, 35, 7, 15, 28, 32, 25, 24, 14, 10, 30, 11, 37, 4, 13, 33, 22, 31, 2, 3, 18, 29, 12, 1, 17, 6, 8 }

  49. {-943,-33,-27,831,-31,963,282,-52,739,-9,95,-201,-517,-25,319,18,802,41,175,-472,-432,-663,-796,920,-908,-925,444,-12,637,-1,-47,520,967,204,156,-340,142,43,-577}

    {-82,-249,343,532,-96,450,-939,577,-744,529,787,624,827,-153,463,-968,597,126,-609,-266,587,-534,-407,948,650,152,101,618,-543,241,-515,436,801,636,539,430,654,464,679}

    Returns: {37, 34, 9, 2, 29, 17, 14, 27, 7, 4, 26, 31, 33, 36, 11, 35, 13, 28, 3, 16, 10, 20, 1, 8, 5, 32, 23, 12, 24, 0, 22, 21, 15, 6, 18, 38, 25, 19, 30 }

  50. {692,630,-324,-626,-257,-73,503,-686,179,-821,-468,-241,-611,-113,-958,-309,-816,792,350,-130,945,-943,-105,-599,208,-19,448,77,260,258,-223,-894,-988,-173,527,-828,-136,-102,958,598,606,-329}

    {-2,862,-401,10,536,-6,212,-867,234,650,323,854,19,-346,0,-298,53,458,831,18,14,-741,508,461,-6,19,106,-754,0,220,-938,-40,167,290,7,902,580,-3,161,25,337,222}

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

  51. {483,-5,-288,-304,860,22,-67,274,100,219,683,104,-618,504}

    {198,-756,-337,-931,-901,-791,891,-103,-67,-724,-994,-786,-440,-254}

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

  52. {458,321,288,-612,741,258,206}

    {886,581,-787,-381,65,609,110}

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

  53. {-258,-82,184,150,303,925}

    {-702,838,109,-835,269,-269}

    Returns: {2, 0, 3, 5, 1, 4 }

  54. {-528,-651,682,-284,311,-671,-212,130,859,275,-14,-135,-203,-985,206,924,859,-642,674,-361,-608,-607,-810,-499,-203,129,87,-601,-809,402,-417,-335,-648,-763,840,741}

    {-217,806,571,149,-666,210,617,754,410,-449,206,-186,-804,-616,-37,41,769,80,-923,989,-574,-754,-751,793,613,360,-799,288,875,166,-377,-122,1000,-338,418,-875}

    Returns: {14, 9, 29, 11, 30, 20, 21, 12, 26, 4, 8, 0, 33, 13, 22, 18, 35, 15, 16, 19, 32, 28, 5, 17, 31, 34, 2, 7, 1, 27, 3, 10, 25, 24, 23, 6 }

  55. {-962,854,-354,15,117,216,-471,148,-899,-15,662,967,-284,402,115,-854,-37,270,-565,623,390,-357,-842,870,-764,260,-949,-35,40,-126,-807,-35,-853,561,-375,386,923,-869,-592,-61,493,63,212,935,516}

    {238,393,-560,376,-777,-605,-196,542,568,-265,-465,783,890,276,741,232,-830,545,-393,864,-186,-413,-312,727,589,-838,-719,-543,160,159,-120,169,-441,187,-408,-750,444,-440,-532,-304,-633,-318,887,-916,-374}

    Returns: {39, 9, 28, 31, 29, 34, 21, 41, 13, 3, 6, 18, 2, 27, 20, 33, 17, 7, 30, 22, 32, 38, 4, 5, 23, 14, 24, 15, 37, 25, 1, 11, 19, 42, 12, 8, 0, 26, 16, 43, 36, 44, 35, 10, 40 }

  56. {-698,-79,-591,163,-442,104,-748,4,-960,779,566,-440,363,-44,-992,77,-777,-186,-410,421,-171,86,-992}

    {564,677,837,86,-845,-815,305,84,538,-961,-239,-952,995,-102,614,550,-679,-453,984,-173,972,-758,-762}

    Returns: {17, 6, 8, 16, 4, 5, 0, 14, 22, 11, 9, 12, 18, 2, 21, 10, 20, 13, 19, 15, 1, 7, 3 }

  57. {-616,-918,651,980,-2,446,650,-895,740,481,-900,408,-891,-983,508,899,-131,-869,-628,692,-931,352,321,23,629,71,694,349,-826,828,-668,-539,-230,903,341,203,-906,-386,127,-836,693,700,532,-756,411,498,-692,812,-349}

    {418,561,-674,462,-773,952,-87,634,73,467,-880,347,-481,711,-646,102,663,102,963,997,238,5,756,898,-3,889,873,787,-385,-691,-256,974,-102,-607,-141,35,862,65,-564,-536,-31,760,79,831,-594,191,-4,-474,406}

    Returns: {21, 34, 6, 24, 35, 32, 30, 38, 44, 40, 42, 37, 46, 28, 14, 8, 45, 17, 12, 39, 4, 2, 47, 15, 11, 0, 20, 10, 29, 33, 3, 19, 31, 18, 36, 13, 1, 48, 9, 41, 26, 5, 43, 7, 16, 22, 27, 25, 23 }

  58. {138,443,-177,-175,211,-747,-370,-314,-599,-956,796,-793,-352,892,830,646,59,634,902,-534,418,82,253,-510,-240,593,-235,-459,-908,581,-192}

    {830,-263,-685,933,610,159,-282,-535,-810,-395,-900,-775,148,575,340,779,23,-495,-119,-592,294,-37,-214,231,904,-174,-901,-450,843,638,944}

    Returns: {6, 22, 21, 12, 27, 7, 1, 16, 23, 19, 2, 25, 20, 4, 3, 24, 5, 8, 17, 14, 0, 30, 28, 9, 11, 26, 10, 18, 13, 15, 29 }

  59. {-141,-650,-558,95,329,770}

    {287,-850,759,-541,89,-902}

    Returns: {0, 2, 1, 5, 4, 3 }

  60. {1,-580,-478,744,-874,254,-89,-921,201,308,665,-702,78,445,976,-865,389}

    {-328,421,-599,993,892,-843,701,-797,-907,-201,341,970,110,97,-620,-378,-705}

    Returns: {2, 5, 0, 15, 7, 8, 14, 3, 11, 4, 1, 16, 10, 6, 12, 9, 13 }

  61. {-367,-351,-603,-926,112,153,112,-209,-759,323,-121,-842,537,-957,37,797,120,-923,432,-931,-319,-213,-971,237,586,-702,275,585,-19,-478,-969,452,-579,-317,-57,-118,213,597,210}

    {-503,-737,922,-489,-330,336,-993,-559,582,762,-811,426,-274,410,-136,332,-419,686,216,-485,692,293,-215,-964,-684,320,422,247,855,321,-297,519,247,-873,-615,-120,768,474,-527}

    Returns: {1, 10, 34, 7, 0, 19, 3, 33, 6, 23, 24, 15, 9, 28, 2, 17, 13, 22, 30, 38, 12, 27, 37, 36, 20, 8, 11, 16, 18, 31, 25, 4, 26, 29, 32, 35, 14, 5, 21 }

  62. {-678,-261,-680,-609,590,-186,828,408,181,154,-906,696,-760,-554,25,971,178,581,433,986,120,366,713,-606,-697,-224,-128,-447,-437,-26,-164,726,-91,-282,-678,-969,398,674,-319,-559,865,491}

    {770,-386,896,584,201,-246,80,-237,787,995,-267,610,483,904,146,213,-367,75,382,221,679,-291,-17,-293,413,156,772,961,692,933,81,593,-417,51,-171,-393,-681,869,-285,-879,179,896}

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

  63. {750,787,392,-220,-101,815,587,-307,-892,-346,311,314,-207,-668,521,559,811,-701,370,114,391,278}

    {-520,-566,-87,227,78,-98,688,59,-304,-738,748,-267,-884,-149,389,238,-105,49,503,591,-929,452}

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

  64. {-224,721,-522,-892,146,-93,-989,138,-668,-148,-707,439,-5,-561,-118,-183,-7}

    {559,330,-705,-39,924,-356,-369,-940,782,946,294,-153,-157,510,-888,534,-528}

    Returns: {13, 10, 3, 5, 0, 8, 6, 2, 14, 7, 1, 4, 9, 15, 16, 11, 12 }

  65. {-241,-469,-1000,-518,-874,-976,-197,116}

    {8,-411,290,-292,211,535,-145,-640}

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

  66. {-403,-635,634,-309,34,782,62,348,-54,157}

    {-390,-710,475,-979,869,166,137,-391,454,63}

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

  67. {-969,-91,-347,680,-505,-53,642,171,-282,703,703,-769,-564,698,-413,-14,796,-677,326,323,-356,725,793,706,-531,-940,89,-489,-199}

    {-53,-490,995,-437,564,-690,868,569,183,312,873,948,-464,-744,301,133,-379,1,806,954,249,815,-371,-394,-891,714,-353,127,-51}

    Returns: {23, 9, 26, 3, 22, 6, 18, 7, 15, 1, 13, 16, 21, 10, 19, 2, 11, 25, 0, 24, 5, 28, 8, 4, 17, 12, 20, 14, 27 }

  68. {-770,300,-773,329,577,304,-933,474,678,128,392,-860,156,-642,646,-856,233,-62,75,609,-960,8,-748,255,75,-902,-579,-39,-571,481,97,-199,744,519,29,-188,428,-170,-131,996,-902}

    {671,211,64,460,575,-115,592,-972,-42,484,832,839,209,488,264,645,124,-359,-487,-431,212,-485,990,993,826,17,-936,805,-977,-441,-555,155,933,-314,700,906,-46,439,-705,-816,-796}

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

  69. {-525,205,-279,378,664,-613,-811,-1,-435,739}

    {-297,350,-46,-911,321,404,-517,397,991,-763}

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

  70. {-418,-996,-546,268,-271,-502,-797,-434,90,-993,-855,348,-469,-364,67,841,511,421,776,881,430,525,-716,236,-619,-797,370,994,676,815,599,-252,197,496,-654,-209,703,191,278,837,-943,-826,-986,280,-950,-316,765}

    {137,654,361,-380,-855,-555,-166,-170,-466,-943,-607,757,-83,437,830,340,637,-130,-311,-320,542,488,-968,853,-155,241,-979,548,-129,906,-601,-938,-18,252,426,-526,778,-963,182,205,-136,-8,420,578,144,-731,141}

    Returns: {35, 45, 8, 7, 24, 5, 4, 3, 17, 32, 12, 6, 10, 31, 37, 30, 18, 28, 0, 41, 40, 9, 22, 26, 19, 27, 29, 23, 14, 1, 42, 44, 46, 39, 15, 36, 11, 34, 25, 38, 33, 21, 16, 13, 2, 20, 43 }

  71. {810,-827,596,-230,-761,-613,-269,95,854,-657,665,-919,-1000}

    {-428,-694,511,234,-701,108,-829,-202,42,182,856,-302,-727}

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

  72. {800,-41,-190,865,779,989,430,435,-306,954,218,491,363,634,759,-343,-630,-699,-172,609,-795,-942,-372,-711,-122,-124,170,545,208,37,930,-722,523,-114,598,885,-827,-707,654,-381,-790}

    {49,542,-752,-176,760,440,344,-779,-692,816,-582,866,857,-56,327,290,-142,622,-108,568,-553,585,888,-172,727,122,478,-998,-577,-509,-678,470,975,-453,-699,33,583,-109,453,-842,-29}

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

  73. {-788,83,-262,161,-375,-993,942,-489,-446,724,-450,-420,-534,-958,370,976,200,503,-794,-933,-712,-667,505,5,-50,-933,275,557,-795,530,678,-326,504,494,759,-144,-304}

    {59,-416,-958,-547,-786,-355,466,-553,656,-46,-571,-651,460,-189,-455,956,-230,-827,497,592,-96,-378,448,347,938,-548,218,-66,-430,-298,438,460,568,782,426,-365,605}

    Returns: {35, 26, 7, 10, 1, 16, 22, 21, 11, 3, 27, 30, 32, 23, 20, 28, 4, 14, 29, 9, 34, 33, 31, 0, 13, 5, 25, 2, 17, 6, 15, 24, 19, 18, 12, 36, 8 }

  74. {313,-917,955,-581,356,604,-858,25,27,485,-629,-219,-669,-417,560,497,-409,466,725,163,175,-555,854,-329,-746,-102,980,-535}

    {214,431,205,-407,-600,-374,327,810,-80,629,-283,-281,197,103,-300,834,-684,-706,-420,573,-42,-783,593,962,806,657,-839,-972}

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

  75. {-89,416,-435,94,591}

    {-596,943,-255,850,222}

    Returns: {2, 0, 4, 1, 3 }

  76. {1,1}

    {1,2}

    Returns: {0, 1 }

  77. {-76, 98, 83, 58, -15, 94, 21, 55, 80, 84, -39, -90, -46, 100, -80, -49, -2, -70, 36, 48, 88, 10, 55, -56, 22, 67, 31, 81, 100, -39, 64, -62, -7, 45, -82, -24, 51, -33, 53, 11, 20, -74, -83, 47, 9, 39, 42, 63, -97, 94 }

    {-90, 68, 91, -92, -6, 88, 99, 10, 39, -69, -61, -4, 71, -5, 90, -51, 21, -53, -21, -86, 41, -9, 42, -23, -4, 12, 94, -59, 55, 18, 70, -88, -86, -17, -97, -33, 87, 80, 91, -80, -79, -79, -78, -99, 57, 67, -52, -46, 61, -10 }

    Returns: {39, 32, 40, 31, 19, 27, 47, 46, 0, 34, 43, 3, 9, 13, 28, 1, 5, 2, 6, 14, 48, 42, 41, 49, 20, 38, 26, 37, 12, 11, 17, 10, 33, 25, 8, 30, 36, 44, 29, 23, 15, 18, 7, 22, 45, 16, 4, 35, 24, 21 }

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

    {1, 4, 9, 16, 25, 36, 49, 64, 81, 100 }

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

  79. {0, 1 }

    {0, 1 }

    Returns: {0, 1 }

  80. {-100, -100, 100, 100, -50, -50, 50, 50, -25, -25, 25, 25, -1, -1, 1, 1 }

    {100, -100, -100, 100, 51, -51, -51, 51, 27, -27, -27, 27, 10, -10, -10, 10 }

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


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: