Statistics

Problem Statement for "KingdomXEmergencyStaircase"

Problem Statement

NOTE: This problem statement contains images that may not display properly if viewed outside of the applet.

A city has imposed new safety measures for its buildings. An emergency staircase is going to be built between the only two tall buildings in Linear Kingdom. These buildings are side-by-side and are infinitely tall. The lowest floor is floor 0 on the ground. The distance between two adjacent floors is two meters. The sides of the buildings are parallel and the distance between the buildings is Width meters, where Width is an even integer. The illustration below shows the bottom of the buildings when the buildings are separated by 4 meters (note that for simplicity only the first six floors are labeled):

Normally a staircase is a structure composed of "flights" (or "flights of stairs") and "landings." A flight is a continious sequence of stairs (steps), usually the same size and in the same direction, which begins and ends on flat areas called landings. For this problem we will use an idealized staircase where landings are a single points and flights are straight line segments.

Each flight that is going to be built is a straight line segment whose slope is either 1 or -1. The picture below illustrates two examples of flights.

Some floors of the buildings have emergency exits. These exits are going to be connected to the ground through the staircase. You are given Strings leftBuilding and rightBuilding. The i-th character (1-based indexing) of leftBuilding (rightBuilding) will be 'Y' if there is an emergency exit on floor i of the left building (right building). Note that this implies that no emergency exit will be on floor 0.

Initially, all floors except floor 0 are not connected to the ground. The procedure for building the staircase will be as follows:
  • You pick a point that is connected to the ground (this point must be located on the staircase or on floor 0).
  • Then, you pick one of the two possible slopes for the flight and extend a line segment from your chosen point until the first time you hit the edge of a building or another flight. This segment must not end in the middle of the ground (though segments that end at floor 0 are allowed). This line segment is the new flight that you are going to build.
  • Flights must be built only in the space between the buildings.
  • All points on the new flight become connected to the ground and if this flight ends at the edge of a building, that floor of that building becomes connected to the ground.
For simplicity, you are only allowed to create flights whose length is a multiple of the square root of 2. That is, a flight connects a vertex of the grid in the first image to another vertex there. Below is an example of a final staircase configuration of valid flights:

The cost of a flight is determined by its length. You are given int[] cost containing Width elements. The i-th element in cost (0-based indexing) is the actual cost to build a flight whose length is (i+1) * SQRT(2). Note that the cost of the flight is the cost of the original length at the time it is built. Starting a new flight at some non-endpoint of an existing flight (for the purposes of this problem) does not divide the existing flight into two and does not affect the cost of the existing flight.

Return the minimum cost required to connect all the emergency exits to the ground.

Definition

Class:
KingdomXEmergencyStaircase
Method:
determineCost
Parameters:
String, String, int[]
Returns:
long
Method signature:
long determineCost(String leftBuilding, String rightBuilding, int[] cost)
(be sure your method is public)

Constraints

  • leftBuilding will contain between 1 and 50 characters, inclusive.
  • rightBuilding will contain between 1 and 50 characters, inclusive.
  • Each character in leftBuilding and rightBuilding will be 'Y' or 'N'.
  • There will be at least one 'Y' in leftBuilding, or, there will be at least one 'Y' in rightBuilding.
  • cost will contain between 2 and 10 elements, inclusive.
  • cost will contain an even number of elements.
  • Each element of cost will be between 1 and 1,000,000,000, inclusive.

Examples

  1. "YNYY"

    "NNNY"

    {10, 40, 18, 25}

    Returns: 98

    The optimal solution corresponds to the last image in the statement. Note that the black squares on some of the floors represent the ones with exits.

  2. "N"

    "Y"

    {1, 1000}

    Returns: 1000

  3. "NNNNNNNY"

    "NNNNNNNY"

    {1, 2}

    Returns: 17

  4. "NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN"

    "NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNY"

    {800000000,800000000,800000000,800000000,800000000,800000000,800000000,800000000}

    Returns: 6400000000

    The answer may not fit into a 32-bit integer.

  5. "YNYNYYNYNYYNYNYYNYNYYNYNYYNYNYYNYNYYNYNYYNYNYYNYNY"

    "YNYNYYNYNYYNYNYYNYNYYNYNYYNYNYYNYNYYNYNYYNYNYYNYNY"

    {958231113, 959939939, 999999999, 954321321, 1000000000, 998998998, 987987987, 999888777, 1000000000, 1000000000}

    Returns: 58212305211

    A huge test case @Ivan the intended solution is really quick :)

  6. "NNY"

    "NNYYY"

    {10000, 10, 40, 10000, 80, 80}

    Returns: 220

  7. "YYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYY"

    "YYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYY"

    {1000000000, 1000000000, 1000000000, 1000000000, 1000000000, 1000000000, 1000000000, 1000000000, 1000000000, 1000000000}

    Returns: 100000000000

    Upperbound on the answer

  8. "NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNY"

    "NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN"

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

    Returns: 100000

    A tower.

  9. "N"

    "YYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYY"

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

    Returns: 100

    A curious case.

  10. "YYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYY"

    "N"

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

    Returns: 100

    Reversed curious case.

  11. "NNNNNNNNNNNNNNNNNNNN"

    "YNNNYYNNNN"

    {96023230,163690201}

    Returns: 1078164436

  12. "YYYY"

    "NYYNNNNNYYYYYNNYNNYYYYYNYYNNYNYY"

    {989583534,990560251,985387828,977245020,343664912,972489206}

    Returns: 20529738990

  13. "NNNNNNNNNYNNNNNNYNYNNNNNYNNNN"

    "NYNYYYYYNNNNNNYYYNNNNYNYY"

    {580402295,553591508,708724209,634644078,697169587,659453250,628060281,687360846,697850075,604551699}

    Returns: 9785884314

  14. "YNYNYYNY"

    "NNNNNNNYNNNNNNNNNYYYNNNNNNNNNNYNNNNN"

    {502928602,581095003}

    Returns: 20025659501

  15. "NNNNNNNYNNNNNNNNNYNNNNNNNNNNNNNNNNNNN"

    "NNNNNNNNYNNNNNNNNNNNNNNNN"

    {449386691,437564512,465230251,430895616,498543778,432090319,458795523,450679284}

    Returns: 2741467472

  16. "YYNYNNNYNNNYYY"

    "NYYYNNYNNYYNYYYYNYYYNNYYYYYY"

    {734359722,811163980,507608624,507992981}

    Returns: 17046879788

  17. "YYNYYYYYYYYNYYYYYYYYYYYYYNNYYYYYYYNYYYYYYYYYY"

    "YYYYYYYYYNNYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYY"

    {30324387,10696603,30072744,25071338,18071925,10852577}

    Returns: 1177259453

  18. "YNYYY"

    "YYYYYYNNNNYNNYYYYYYYYNNNNYYYYYYNYYYYYYYYNYYNYYYN"

    {269858868,198863374,426679028,214731620}

    Returns: 11601925496

  19. "NNNNNNNNNYNNNNYNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN"

    "YYYYYYYYY"

    {26703361,377183164,909470895,856975545,483383631,487875870,700767084,468256964,468265132,744338963}

    Returns: 4650850115

  20. "YYYYYYYYYYYYYYYYYYYYYYYYYYYYY"

    "NNNNNNYYNNNNNN"

    {459813926,573179902}

    Returns: 23519426048

  21. "NNNNNNNNNNNNNNNNNNNNNNNNN"

    "YNNYNYNYNNNYNYNNYNYNYNNNNNNNNNYNYYNYNNYNNNNNYYYYYN"

    {586938057,636475137}

    Returns: 34708910055

  22. "NNNNNNNYNNYNN"

    "NNNYYNYNNNNNNNNNNNNNNNYNNNNNNNNNNNNNNNNNNYYN"

    {567164826,834495514,822596428,904805856,787810200,352982110,381068918,658227264}

    Returns: 8379239522

  23. "NN"

    "NYYNYYYYYN"

    {906419950,594819953,901044342,619462802,909750161,905541879,906334287,592513630}

    Returns: 6284590810

  24. "YYYYYYYYYYYNYYYNNY"

    "YYYNNYNNYYYNYNNYNNNNYNNYNYYYYNYNNNYYNYNYNYN"

    {642744532,499567004,953634879,627581562}

    Returns: 27122006293

  25. "NNNNNNYNNNNNNNNNNNNNNNNNNNNNNNNNN"

    "YNYNYYYNYNYNNYNNNNYYNNYYNYNYNYYYYNNNYNNYY"

    {9075220,606084997,7231445,659380318}

    Returns: 1041234093

  26. "NNNNNNNYNN"

    "NNNNNNNNNYNNNNNNNNNN"

    {331690215,549668165,492491890,343204049,470841409,433227283,380500328,350699830,481672938,437421429}

    Returns: 1168621587

  27. "YNNN"

    "NNYNYNYNYNNYYNNNYYNNYNNYNYNYNNNNYNNYYYNYYNNN"

    {312384312,235781852,562419329,235199978,296111345,482837892,542217049,481647274,291160089,523655994}

    Returns: 6951197237

  28. "NNYYNYNYYNYNYNYYYYNNYYYYYNYYYNYNNNNY"

    "YYYYYYYYYYNYYNNYNYYYYYYYNYYY"

    {63143818,38147816,442805675,38088921,73005397,61673731,24193110,866660191}

    Returns: 2556616378

  29. "NNNN"

    "YYYYYYY"

    {298542636,395087728,368639324,304857658,565522785,376686626,243959591,598260612}

    Returns: 2773669395

  30. "N"

    "Y"

    {721918845,602721939,642162410,887148176,100814683,843677612,923579321,92155490,201550116,650885822}

    Returns: 944591428

  31. "N"

    "NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNY"

    {168126041,55892163,932419108,164603702,111991051,45436029,140946155,59357025,927387527,89955006}

    Returns: 899550060

  32. "N"

    "YYYYNNNYYYYNYYYYYYNYYYNYYYYNYYNYYYNYYYYYYNYYYNNYYY"

    {915844611,932068381,938901263,931501842,495302747,918212306,923987875,928505919}

    Returns: 36119240166

  33. "N"

    "YNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN"

    {917852328,926430785,932949091,913416060,981478402,961400632,953904089,954956246,148422747,248713219}

    Returns: 645849185

  34. "NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN"

    "YYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYY"

    {153540898,4872413}

    Returns: 4082143100

  35. "NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN"

    "NNNYNNNYYNYNYYNNYYNYYYNYYYYNYYNNNYNYYNNYYNYYYNNNYN"

    {85953195,431066715}

    Returns: 21981800985

  36. "NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN"

    "YYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYY"

    {466904225,794451517}

    Returns: 51395181475

  37. "Y"

    "NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNY"

    {289292679,362963320}

    Returns: 18148166000

  38. "Y"

    "YYYYNNNYYYYNYYYYYYNYYYNYYYYNYYNYYYNYYYYYYNYYYNNYYY"

    {964883197,965831046,964451246,964844699}

    Returns: 51129793914

  39. "Y"

    "YNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN"

    {16292054,99861481,150330815,129488601,14959603,15658648,15669441,14985100}

    Returns: 177057809

  40. "YYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYY"

    "NNNYNNNYYNYNYYNNYYNYYYNYYYYNYYNNNYNYYNNYYNYYYNNNYN"

    {568776171,371147052}

    Returns: 36758190072

  41. "YYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYY"

    "YYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYY"

    {53456581,42215391}

    Returns: 4783598600

  42. "NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNY"

    "YYYYNNNYYYYNYYYYYYNYYYNYYYYNYYNYYYNYYYYYYNYYYNNYYY"

    {413488333,359333504}

    Returns: 25409465194

  43. "NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNY"

    "YNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN"

    {710267415,973020597}

    Returns: 48651029850

  44. "NNNYNNNYYNYNYYNNYYNYYYNYYYYNYYNNNYNYYNNYYNYYYNNNYN"

    "YYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYY"

    {874487153,421412557,706816220,31797367,315891332,322122056}

    Returns: 23764137553

  45. "YYYYNNNYYYYNYYYYYYNYYYNYYYYNYYNYYYNYYYYYYNYYYNNYYY"

    "YNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN"

    {245329544,406070152,290130858,230634278,455225804,307105311,230884404,448430389}

    Returns: 11961375996

  46. "N"

    "Y"

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

    Returns: 1000000001

  47. "N"

    "Y"

    {1000000000,1000000000,1000000000,1000000000,1000000000,1000000000,1000000000,1000000000,1000000000,1000000000}

    Returns: 2000000000

  48. "N"

    "Y"

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

    Returns: 2

  49. "N"

    "Y"

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

    Returns: 2000000000

  50. "N"

    "Y"

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

    Returns: 1000000001

  51. "N"

    "Y"

    {1000000000,999999999,999999999,1000000000,1000000000,999999999,1000000000,999999999,1000000000,999999999}

    Returns: 1999999999

  52. "N"

    "NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNY"

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

    Returns: 1000000045

  53. "N"

    "NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNY"

    {1000000000,1000000000,1000000000,1000000000,1000000000,1000000000,1000000000,1000000000,1000000000,1000000000}

    Returns: 10000000000

  54. "N"

    "NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNY"

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

    Returns: 10

  55. "N"

    "NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNY"

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

    Returns: 2000000010

  56. "N"

    "NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNY"

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

    Returns: 10

  57. "N"

    "NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNY"

    {1000000000,999999999,1000000000,999999999,999999999,1000000000,1000000000,999999999,1000000000,999999999}

    Returns: 9999999990

  58. "N"

    "YYYYNNNYYYYNYYYYYYNYYYNYYYYNYYNYYYNYYYYYYNYYYNNYYY"

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

    Returns: 1000000044

  59. "N"

    "YYYYNNNYYYYNYYYYYYNYYYNYYYYNYYNYYYNYYYYYYNYYYNNYYY"

    {1000000000,1000000000,1000000000,1000000000,1000000000,1000000000,1000000000,1000000000,1000000000,1000000000}

    Returns: 43000000000

  60. "N"

    "YYYYNNNYYYYNYYYYYYNYYYNYYYYNYYNYYYNYYYYYYNYYYNNYYY"

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

    Returns: 43

  61. "N"

    "YYYYNNNYYYYNYYYYYYNYYYNYYYYNYYNYYYNYYYYYYNYYYNNYYY"

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

    Returns: 24000000027

  62. "N"

    "YYYYNNNYYYYNYYYYYYNYYYNYYYYNYYNYYYNYYYYYYNYYYNNYYY"

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

    Returns: 43

  63. "N"

    "YYYYNNNYYYYNYYYYYYNYYYNYYYYNYYNYYYNYYYYYYNYYYNNYYY"

    {999999999,1000000000,1000000000,1000000000,999999999,1000000000,1000000000,999999999,999999999,999999999}

    Returns: 42999999963

  64. "N"

    "YNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN"

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

    Returns: 1000000001

  65. "N"

    "YNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN"

    {1000000000,1000000000,1000000000,1000000000,1000000000,1000000000,1000000000,1000000000,1000000000,1000000000}

    Returns: 2000000000

  66. "N"

    "YNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN"

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

    Returns: 2

  67. "N"

    "YNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN"

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

    Returns: 2000000000

  68. "N"

    "YNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN"

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

    Returns: 2

  69. "N"

    "YNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN"

    {999999999,1000000000,1000000000,1000000000,999999999,1000000000,999999999,999999999,999999999,1000000000}

    Returns: 1999999999

  70. "NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN"

    "YYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYY"

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

    Returns: 55

  71. "NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN"

    "YYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYY"

    {1000000000,1000000000,1000000000,1000000000,1000000000,1000000000,1000000000,1000000000,1000000000,1000000000}

    Returns: 55000000000

  72. "NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN"

    "YYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYY"

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

    Returns: 55

  73. "NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN"

    "YYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYY"

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

    Returns: 43000000014

  74. "NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN"

    "YYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYY"

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

    Returns: 55

  75. "NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN"

    "YYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYY"

    {1000000000,1000000000,999999999,1000000000,999999999,999999999,999999999,1000000000,1000000000,999999999}

    Returns: 54999999970

  76. "NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN"

    "NNNYNNNYYNYNYYNNYYNYYYNYYYYNYYNNNYNYYNNYYNYYYNNNYN"

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

    Returns: 36

  77. "NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN"

    "NNNYNNNYYNYNYYNNYYNYYYNYYYYNYYNNNYNYYNNYYNYYYNNNYN"

    {1000000000,1000000000,1000000000,1000000000,1000000000,1000000000,1000000000,1000000000,1000000000,1000000000}

    Returns: 32000000000

  78. "NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN"

    "NNNYNNNYYNYNYYNNYYNYYYNYYYYNYYNNNYNYYNNYYNYYYNNNYN"

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

    Returns: 32

  79. "NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN"

    "NNNYNNNYYNYNYYNNYYNYYYNYYYYNYYNNNYNYYNNYYNYYYNNNYN"

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

    Returns: 20000000014

  80. "NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN"

    "NNNYNNNYYNYNYYNNYYNYYYNYYYYNYYNNNYNYYNNYYNYYYNNNYN"

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

    Returns: 32

  81. "NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN"

    "NNNYNNNYYNYNYYNNYYNYYYNYYYYNYYNNNYNYYNNYYNYYYNNNYN"

    {1000000000,999999999,999999999,999999999,999999999,1000000000,1000000000,1000000000,999999999,1000000000}

    Returns: 31999999971

  82. "NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN"

    "YYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYY"

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

    Returns: 2000000056

  83. "NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN"

    "YYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYY"

    {1000000000,1000000000,1000000000,1000000000,1000000000,1000000000,1000000000,1000000000,1000000000,1000000000}

    Returns: 55000000000

  84. "NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN"

    "YYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYY"

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

    Returns: 55

  85. "NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN"

    "YYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYY"

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

    Returns: 28000000044

  86. "NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN"

    "YYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYY"

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

    Returns: 55

  87. "NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN"

    "YYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYY"

    {999999999,1000000000,999999999,1000000000,1000000000,999999999,999999999,1000000000,999999999,1000000000}

    Returns: 54999999952

  88. "Y"

    "NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNY"

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

    Returns: 11

  89. "Y"

    "NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNY"

    {1000000000,1000000000,1000000000,1000000000,1000000000,1000000000,1000000000,1000000000,1000000000,1000000000}

    Returns: 11000000000

  90. "Y"

    "NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNY"

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

    Returns: 11

  91. "Y"

    "NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNY"

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

    Returns: 10000000004

  92. "Y"

    "NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNY"

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

    Returns: 1000000013

  93. "Y"

    "NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNY"

    {999999999,1000000000,999999999,1000000000,1000000000,1000000000,999999999,999999999,1000000000,999999999}

    Returns: 10999999990

  94. "Y"

    "YYYYNNNYYYYNYYYYYYNYYYNYYYYNYYNYYYNYYYYYYNYYYNNYYY"

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

    Returns: 44

  95. "Y"

    "YYYYNNNYYYYNYYYYYYNYYYNYYYYNYYNYYYNYYYYYYNYYYNNYYY"

    {1000000000,1000000000,1000000000,1000000000,1000000000,1000000000,1000000000,1000000000,1000000000,1000000000}

    Returns: 44000000000

  96. "Y"

    "YYYYNNNYYYYNYYYYYYNYYYNYYYYNYYNYYYNYYYYYYNYYYNNYYY"

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

    Returns: 44

  97. "Y"

    "YYYYNNNYYYYNYYYYYYNYYYNYYYYNYYNYYYNYYYYYYNYYYNNYYY"

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

    Returns: 32000000022

  98. "Y"

    "YYYYNNNYYYYNYYYYYYNYYYNYYYYNYYNYYYNYYYYYYNYYYNNYYY"

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

    Returns: 44

  99. "Y"

    "YYYYNNNYYYYNYYYYYYNYYYNYYYYNYYNYYYNYYYYYYNYYYNNYYY"

    {1000000000,999999999,999999999,1000000000,1000000000,999999999,999999999,1000000000,999999999,1000000000}

    Returns: 43999999973

  100. "Y"

    "YNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN"

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

    Returns: 1000000003

  101. "Y"

    "YNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN"

    {1000000000,1000000000,1000000000,1000000000,1000000000,1000000000,1000000000,1000000000,1000000000,1000000000}

    Returns: 3000000000

  102. "Y"

    "YNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN"

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

    Returns: 3

  103. "Y"

    "YNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN"

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

    Returns: 3000000000

  104. "Y"

    "YNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN"

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

    Returns: 3

  105. "Y"

    "YNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN"

    {999999999,1000000000,1000000000,999999999,999999999,999999999,1000000000,1000000000,999999999,1000000000}

    Returns: 2999999998

  106. "YYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYY"

    "NNNYNNNYYNYNYYNNYYNYYYNYYYYNYYNNNYNYYNNYYNYYYNNNYN"

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

    Returns: 1000000076

  107. "YYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYY"

    "NNNYNNNYYNYNYYNNYYNYYYNYYYYNYYNNNYNYYNNYYNYYYNNNYN"

    {1000000000,1000000000,1000000000,1000000000,1000000000,1000000000,1000000000,1000000000,1000000000,1000000000}

    Returns: 76000000000

  108. "YYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYY"

    "NNNYNNNYYNYNYYNNYYNYYYNYYYYNYYNNNYNYYNNYYNYYYNNNYN"

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

    Returns: 76

  109. "YYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYY"

    "NNNYNNNYYNYNYYNNYYNYYYNYYYYNYYNNNYNYYNNYYNYYYNNNYN"

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

    Returns: 36000000042

  110. "YYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYY"

    "NNNYNNNYYNYNYYNNYYNYYYNYYYYNYYNNNYNYYNNYYNYYYNNNYN"

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

    Returns: 76

  111. "YYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYY"

    "NNNYNNNYYNYNYYNNYYNYYYNYYYYNYYNNNYNYYNNYYNYYYNNNYN"

    {999999999,999999999,999999999,1000000000,999999999,1000000000,999999999,1000000000,1000000000,1000000000}

    Returns: 75999999930

  112. "YYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYY"

    "YYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYY"

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

    Returns: 1000000101

  113. "YYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYY"

    "YYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYY"

    {1000000000,1000000000,1000000000,1000000000,1000000000,1000000000,1000000000,1000000000,1000000000,1000000000}

    Returns: 100000000000

  114. "YYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYY"

    "YYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYY"

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

    Returns: 100

  115. "YYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYY"

    "YYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYY"

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

    Returns: 55000000045

  116. "YYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYY"

    "YYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYY"

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

    Returns: 100

  117. "YYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYY"

    "YYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYY"

    {999999999,999999999,1000000000,1000000000,999999999,999999999,1000000000,1000000000,999999999,1000000000}

    Returns: 99999999902

  118. "NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNY"

    "YYYYNNNYYYYNYYYYYYNYYYNYYYYNYYNYYYNYYYYYYNYYYNNYYY"

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

    Returns: 1000000053

  119. "NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNY"

    "YYYYNNNYYYYNYYYYYYNYYYNYYYYNYYNYYYNYYYYYYNYYYNNYYY"

    {1000000000,1000000000,1000000000,1000000000,1000000000,1000000000,1000000000,1000000000,1000000000,1000000000}

    Returns: 44000000000

  120. "NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNY"

    "YYYYNNNYYYYNYYYYYYNYYYNYYYYNYYNYYYNYYYYYYNYYYNNYYY"

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

    Returns: 44

  121. "NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNY"

    "YYYYNNNYYYYNYYYYYYNYYYNYYYYNYYNYYYNYYYYYYNYYYNNYYY"

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

    Returns: 26000000019

  122. "NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNY"

    "YYYYNNNYYYYNYYYYYYNYYYNYYYYNYYNYYYNYYYYYYNYYYNNYYY"

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

    Returns: 44

  123. "NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNY"

    "YYYYNNNYYYYNYYYYYYNYYYNYYYYNYYNYYYNYYYYYYNYYYNNYYY"

    {999999999,999999999,1000000000,1000000000,999999999,1000000000,1000000000,999999999,999999999,1000000000}

    Returns: 43999999962

  124. "NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNY"

    "YNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN"

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

    Returns: 12

  125. "NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNY"

    "YNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN"

    {1000000000,1000000000,1000000000,1000000000,1000000000,1000000000,1000000000,1000000000,1000000000,1000000000}

    Returns: 11000000000

  126. "NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNY"

    "YNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN"

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

    Returns: 11

  127. "NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNY"

    "YNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN"

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

    Returns: 10000000001

  128. "NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNY"

    "YNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN"

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

    Returns: 11

  129. "NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNY"

    "YNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN"

    {1000000000,1000000000,1000000000,999999999,1000000000,1000000000,999999999,999999999,999999999,999999999}

    Returns: 10999999989

  130. "NNNYNNNYYNYNYYNNYYNYYYNYYYYNYYNNNYNYYNNYYNYYYNNNYN"

    "YYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYY"

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

    Returns: 2000000075

  131. "NNNYNNNYYNYNYYNNYYNYYYNYYYYNYYNNNYNYYNNYYNYYYNNNYN"

    "YYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYY"

    {1000000000,1000000000,1000000000,1000000000,1000000000,1000000000,1000000000,1000000000,1000000000,1000000000}

    Returns: 76000000000

  132. "NNNYNNNYYNYNYYNNYYNYYYNYYYYNYYNNNYNYYNNYYNYYYNNNYN"

    "YYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYY"

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

    Returns: 76

  133. "NNNYNNNYYNYNYYNNYYNYYYNYYYYNYYNNNYNYYNNYYNYYYNNNYN"

    "YYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYY"

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

    Returns: 51000000025

  134. "NNNYNNNYYNYNYYNNYYNYYYNYYYYNYYNNNYNYYNNYYNYYYNNNYN"

    "YYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYY"

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

    Returns: 76

  135. "NNNYNNNYYNYNYYNNYYNYYYNYYYYNYYNNNYNYYNNYYNYYYNNNYN"

    "YYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYY"

    {1000000000,1000000000,1000000000,1000000000,1000000000,999999999,999999999,999999999,999999999,999999999}

    Returns: 75999999954

  136. "YYYYNNNYYYYNYYYYYYNYYYNYYYYNYYNYYYNYYYYYYNYYYNNYYY"

    "YNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN"

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

    Returns: 1000000048

  137. "YYYYNNNYYYYNYYYYYYNYYYNYYYYNYYNYYYNYYYYYYNYYYNNYYY"

    "YNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN"

    {1000000000,1000000000,1000000000,1000000000,1000000000,1000000000,1000000000,1000000000,1000000000,1000000000}

    Returns: 44000000000

  138. "YYYYNNNYYYYNYYYYYYNYYYNYYYYNYYNYYYNYYYYYYNYYYNNYYY"

    "YNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN"

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

    Returns: 44

  139. "YYYYNNNYYYYNYYYYYYNYYYNYYYYNYYNYYYNYYYYYYNYYYNNYYY"

    "YNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN"

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

    Returns: 32000000022

  140. "YYYYNNNYYYYNYYYYYYNYYYNYYYYNYYNYYYNYYYYYYNYYYNNYYY"

    "YNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN"

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

    Returns: 1000000045

  141. "YYYYNNNYYYYNYYYYYYNYYYNYYYYNYYNYYYNYYYYYYNYYYNNYYY"

    "YNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN"

    {1000000000,999999999,1000000000,999999999,999999999,1000000000,999999999,1000000000,999999999,1000000000}

    Returns: 43999999976

  142. "Y"

    "N"

    {5,1}

    Returns: 1

  143. "NNNNY"

    "NNNNN"

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

    Returns: 1

  144. "NNNNN"

    "NNNNY"

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

    Returns: 1

  145. "N"

    "Y"

    {5,1}

    Returns: 1

  146. "NNYNNNNYYYNNYNNNNYYYNNYNNNNYYYNNYNNNNYYYNNYNNNNYYY"

    "NNYYYNNYNNNNYYYNNYNNNNYYYNNYNNNNYYYNNYNNNNYYYNNYNN"

    {10000, 10, 40, 10000, 80, 80}

    Returns: 2200

  147. "NNYYYYYYYYYYYYYYYYY"

    "NNNNY"

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

    Returns: 20

  148. "YY"

    "YY"

    {371,44,298,9}

    Returns: 521

  149. "Y"

    "Y"

    {496,35,454,109}

    Returns: 819

  150. "YNYY"

    "NNNY"

    {10, 40, 18, 25 }

    Returns: 98

  151. "NYYYYYYYNYYYYYYYNYYYNYYYYYYYYNNYYNNYNYYYYYYYNYYYYY"

    "YNYNYYNYYYYYYYYNNNYYYYNYYYYYNYNYYYYYYNYYNNYYYNYYYY"

    {746211362, 427778473, 609181022, 421252720, 634126555, 142390490, 741434962, 845183368, 401105843, 212290473 }

    Returns: 27880738415


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: