Statistics

Problem Statement for "EllysScrabble"

Problem Statement

Elly is playing Scrabble with her family. The exact rules of the game are not important for this problem. You only need to know that Elly has a holder that contains a row of N tiles, and that there is a single letter on each of those tiles. (Tiles are small square pieces of wood. A holder is a tiny wooden shelf with room for precisely N tiles placed in a row.)

While Elly waits for the other players, she entertains herself in the following way. She slightly taps the table, causing the tiles on her holder jump a little and some of them switch places. Formally, suppose that Elly has N tiles. There are N positions on the holder, we will label them 0 through N-1 from left to right. When Elly taps the table, the tiles on her holder will form some permutation of their original order. You are given an int maxDistance with the following meaning: in the permutation that Elly produces by tapping the table, no tile will be more than maxDistance positions away from its original position (in either direction).

For example, suppose that before a tap the letters in Elly's holder formed the string "TOPCODER" when read from left to right. If maxDistance is 3, one possible string after Elly taps the table is "CODTEPOR". This can happen in the following way:
  1. The letter 'T' at position 0 moves three positions to the right (to position 3).
  2. The letter 'O' at position 1 remains on its initial position (position 1).
  3. The letter 'P' at position 2 moves three positions to the right (to position 5).
  4. The letter 'C' at position 3 moves three positions to the left (to position 0).
  5. The letter 'O' at position 4 moves two positions to the right (to position 6).
  6. The letter 'D' at position 5 moves three positions to the left (to position 2).
  7. The letter 'E' at position 6 moves two positions to the left (to position 4).
  8. The letter 'R' at position 7 remains on its initial position (position 7).
Note that the letter 'D' (at position 5) cannot move to position 1, because this would require it to move more than the maximal distance 3.

It turns out that the string "CODTEPOR" is the lexicographically smallest one Elly can get from "TOPCODER" with a single tap and maxDistance = 3. Now you want to write a program that, given the String letters and the int maxDistance, returns the lexicographically smallest string the girl can get after a single tap.

Definition

Class:
EllysScrabble
Method:
getMin
Parameters:
String, int
Returns:
String
Method signature:
String getMin(String letters, int maxDistance)
(be sure your method is public)

Notes

  • Given two different strings A and B of equal length, the lexicographically smaller one is the one that contains a smaller character at the first position where they differ.

Constraints

  • letters will contain between 1 and 50 characters, inclusive.
  • letters will contain only uppercase letters from the English alphabet ('A'-'Z').
  • maxDistance will be between 1 and 9, inclusive.

Examples

  1. "TOPCODER"

    3

    Returns: "CODTEPOR"

    The example from the problem statement.

  2. "ESPRIT"

    3

    Returns: "EIPRST"

    In this example the letters 'E', 'P', 'R', and 'T' stay on their initial places, and the letters 'S' and 'I' swap. Since the distance between them is exactly 3 (which also happens to be the maximal distance they can move), this is a valid final configuration.

  3. "BAZINGA"

    8

    Returns: "AABGINZ"

    Note that the maximal distance may be greater than the number of letters Elly has. In such cases, the lexicographically smallest result is, obviously, the sorted sequence of letters.

  4. "ABCDEFGHIJKLMNOPQRSTUVWXYZ"

    9

    Returns: "ABCDEFGHIJKLMNOPQRSTUVWXYZ"

    As the input letters are already sorted, we can assume they'll just fall back to their initial places.

  5. "GOODLUCKANDHAVEFUN"

    7

    Returns: "CADDGAHEOOFLUKNNUV"

  6. "AAAWDIUAOIWDESBEAIWODJAWDBPOAWDUISAWDOOPAWD"

    6

    Returns: "AAAADDEIBWAEUIODWADSBIAJWODIAWDOPOAWDUOSPWW"

  7. "ABRACADABRA"

    2

    Returns: "AABARACBDAR"

    The letter 'A' at position 0 remains on its initial place (position 0). The letter 'B' at position 1 moves one position to the right (to position 2). The letter 'R' at position 2 moves two positions to the right (to position 4). The letter 'A' at position 3 moves two positions to the left (to position 1). The letter 'C' at position 4 moves two positions to the right (to position 6). The letter 'A' at position 5 moves two positions to the left (to position 3). The letter 'D' at position 6 moves two positions to the right (to position 8). The letter 'A' at position 7 moves two positions to the left (to position 5). The letter 'B' at position 8 moves one position to the left (to position 7). The letter 'R' at position 9 moves one position to the right (to position 10). The letter 'A' at position 10 moves one position to the left (to position 9).

  8. "A"

    1

    Returns: "A"

  9. "A"

    9

    Returns: "A"

  10. "Z"

    1

    Returns: "Z"

  11. "Z"

    9

    Returns: "Z"

  12. "AAAAAAAAAAAAAAAAAACB"

    5

    Returns: "AAAAAAAAAAAAAAAAAABC"

  13. "CABAAAAAAAAAAAAAAAACB"

    2

    Returns: "AACABAAAAAAAAAAAAAABC"

  14. "WITHOUTITIMJUSTESPRIT"

    9

    Returns: "HIIIJMEOPWITRSUTSTTTU"

  15. "RIGHTNOWYOUSHOULDBELAUGHING"

    7

    Returns: "GHINOHORLDBTEAWYGUSGOUHILNU"

  16. "GOGOKEFAKEFAISNOTBLUEYET"

    8

    Returns: "AEEAFFGGIOBOKEEKLNOSTTUY"

  17. "ZZAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"

    9

    Returns: "AAAAAAAAAZZAAAAAAAAAAAAAAAAAAAAA"

  18. "ZZZZZZZZZZZZZZZZZZZZZAAAAAAAAAAAAAAAAAAAA"

    9

    Returns: "ZZZZZZZZZZZZAAAAAAAAAZZZZZZZZZAAAAAAAAAAA"

  19. "GOOGLE"

    3

    Returns: "GGELOO"

  20. "GGNORE"

    5

    Returns: "EGGNOR"

  21. "AZAZAZAZAZAZAZAZAZAZAZAZAZAZAZAZAZAZAZAZAZAZAZAZAZ"

    9

    Returns: "AAAAAAAAAAZAZAZAZAZAZAZAZAZAZAZAZAZAZAZAZZZZZZZZZZ"

  22. "ABCDEFGHIJKLMNOPQRSTUVWXYZ"

    8

    Returns: "ABCDEFGHIJKLMNOPQRSTUVWXYZ"

  23. "ZYXWVUTSRQPONMLKJIHGFEDCBA"

    8

    Returns: "RQPONMLKZYXWVUTSBACDEFGHJI"

  24. "TOPCODER"

    1

    Returns: "OTCPDOER"

  25. "TOPCODER"

    3

    Returns: "CODTEPOR"

  26. "TOPCODER"

    4

    Returns: "CDEOTOPR"

  27. "TOPCODER"

    5

    Returns: "CDEOOTPR"

  28. "TOPCODER"

    6

    Returns: "CDEOOPTR"

  29. "TOPCODER"

    7

    Returns: "CDEOOPRT"

  30. "TOPCODER"

    8

    Returns: "CDEOOPRT"

  31. "AAAAAABCDEFKYDETREZAZZYYYRRZ"

    5

    Returns: "AAAAAABCDDEEEFAKRYTYRRYZYZZZ"

  32. "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAZYX"

    9

    Returns: "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAXYZ"

  33. "ZYXAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"

    9

    Returns: "AAAAAAAAAZYXAAAAAAAAAAAAAAAAAAAAAAA"

  34. "MOMSEEIAMWRITINGTESTSFORTOPCODERTCOROUNDONE"

    9

    Returns: "AEEIIIGMEMOMSFNOOPWRCTDECTOSTSDNRTENOOORRTU"

  35. "DDDDDDDDCCCCCCCCCCCCCCCCCCCCCCCC"

    5

    Returns: "DDDCCCCCDDDDDCCCCCCCCCCCCCCCCCCC"

  36. "DDDDDDDDCCCCCCCCCCCCCCCCCCCCCCCC"

    9

    Returns: "CCCCCCCCCDDDDDDDDCCCCCCCCCCCCCCC"

  37. "ZZZYYYGGGGXXXCBAABCFFFFFFTRRAWD"

    1

    Returns: "ZZYZYGYGGGXXCXABABCFFFFFFRTARDW"

  38. "ZZZYYYGGGGXXXCBAABCFFFFFFTRRAWD"

    2

    Returns: "ZYYZZGGYGGXCBXXAABCFFFFFFRATDRW"

  39. "ZZZYYYGGGGXXXCBAABCFFFFFFTRRAWD"

    3

    Returns: "YYYZZZGGGGCBAXXXABCFFFFFFARDTRW"

  40. "ZZZYYYGGGGXXXCBAABCFFFFFFTRRAWD"

    4

    Returns: "YYGGZZZGGYBAABXXXCCFFFFFAFDRRTW"

  41. "ZZZYYYGGGGXXXCBAABCFFFFFFTRRAWD"

    5

    Returns: "YGGGGZZZCYYAABBXXXCFFFFAFDFRRTW"

  42. "ZZZYYYGGGGXXXCBAABCFFFFFFTRRAWD"

    6

    Returns: "GGGGXXZZZYYYAABBCCXFFFAFDFFRRTW"

  43. "ZZZYYYGGGGXXXCBAABCFFFFFFTRRAWD"

    7

    Returns: "GGGGXXCZZZYYYAABBCFXFAFDFFFRRTW"

  44. "ZZZYYYGGGGXXXCBAABCFFFFFFTRRAWD"

    8

    Returns: "GGGGXCBAZZZYYYABCFFXXADFFFFRRTW"

  45. "ZZZYYYGGGGXXXCBAABCFFFFFFTRRAWD"

    9

    Returns: "GGGGCBAABZZZYYYCFFFXXXADFFFRRTW"

  46. "QZZYYYGGGGXXXCBAABCFFFFFFTRRAWD"

    7

    Returns: "GGGGQXCBZZYYYAABCFXXFAFDFFFRRTW"

  47. "ABCDEFGHIJKLMNOPQRSTUVWXYYXWVUTSRQPONMLKJIHGFEDCBA"

    1

    Returns: "ABCDEFGHIJKLMNOPQRSTUVWXYXYVWTURSPQNOLMJKHIFGDEBCA"

  48. "ABCDEFGHIJKLMNOPQRSTUVWXYYXWVUTSRQPONMLKJIHGFEDCBA"

    3

    Returns: "ABCDEFGHIJKLMNOPQRSTUVWXWVUYYXQPOTSRKJINMLEDCHGFAB"

  49. "ABCDEFGHIJKLMNOPQRSTUVWXYYXWVUTSRQPONMLKJIHGFEDCBA"

    5

    Returns: "ABCDEFGHIJKLMNOPQRSTUVWVUTSRXYYXWLKJIHQPONMBACDEGF"

  50. "ABCDEFGHIJKLMNOPQRSTUVWXYYXWVUTSRQPONMLKJIHGFEDCBA"

    7

    Returns: "ABCDEFGHIJKLMNOPQRSTUVUTSRQPOWXYYXWVGFEDCBANMLKJIH"

  51. "ABCDEFGHIJKLMNOPQRSTUVWXYYXWVUTSRQPONMLKJIHGFEDCBA"

    9

    Returns: "ABCDEFGHIJKLMNOPQRSTUTSRQPONMLVWXYYXWVUBACDEFGHIKJ"

  52. "YXWVUTSRQPONMLKJIHGFEDCBAABCDEFGHIJKLMNOPQRSTUVWXY"

    2

    Returns: "WVYXSRUTONQPKJMLGFIHCBEDAABCDEFGHIJKLMNOPQRSTUVWXY"

  53. "YXWVUTSRQPONMLKJIHGFEDCBAABCDEFGHIJKLMNOPQRSTUVWXY"

    4

    Returns: "UTSRYXWVMLKJQPONEDCBIHGFAABCDEFGHIJKLMNOPQRSTUVWXY"

  54. "YXWVUTSRQPONMLKJIHGFEDCBAABCDEFGHIJKLMNOPQRSTUVWXY"

    6

    Returns: "SRQPONYXWVUTGFEDCBMLKJIHAABCDEFGHIJKLMNOPQRSTUVWXY"

  55. "YXWVUTSRQPONMLKJIHGFEDCBAABCDEFGHIJKLMNOPQRSTUVWXY"

    8

    Returns: "QPONMLKJYXWVUTSRAABBCCDDIHGFEEFGHIJKLMNOPQRSTUVWXY"

  56. "YXWVUTSRQPONMLKJIHGFEDCBAABCDEFGHIJKLMNOPQRSTUVWXY"

    9

    Returns: "PONMLKJIHYXWVUTSRQAABBCCDDEGFEFGHIJKLMNOPQRSTUVWXY"

  57. "ZAZBZCZDZEZFZGZHZIZJZKZLZMZNZOZPZQZRZSZTZUZVZWZXZY"

    7

    Returns: "ABCDEFGZHZIZJZKZLZMZNZOZPZQZRZSZTZUZVZWZXZYZZZZZZZ"

  58. "ZAZBZCZDZEZFZGZHZIZJZKZLZMZNZOZPZQZRZSZTZUZVZWZXZY"

    8

    Returns: "ABCDEFGHZIZJZKZLZMZNZOZPZQZRZSZTZUZVZWZXZYZZZZZZZZ"

  59. "ZAZBZCZDZEZFZGZHZIZJZKZLZMZNZOZPZQZRZSZTZUZVZWZXZY"

    9

    Returns: "ABCDEFGHIZJZKZLZMZNZOZPZQZRZSZTZUZVZWZXZYZZZZZZZZZ"

  60. "AZAYAXAWAVAUATASARAQAPAOANAMALAKAJAIAHAGAFAEADACAB"

    7

    Returns: "AAAAAAAAZAYAXAWAVAUATASARAQAPAOANAMALAKAJAIBHCGDFE"

  61. "AZAYAXAWAVAUATASARAQAPAOANAMALAKAJAIAHAGAFAEADACAB"

    8

    Returns: "AAAAAAAAAZAYAXAWAVAUATASARAQAPAOANAMALAKAJBICHDGEF"

  62. "AZAYAXAWAVAUATASARAQAPAOANAMALAKAJAIAHAGAFAEADACAB"

    9

    Returns: "AAAAAAAAAAZAYAXAWAVAUATASARAQAPAOANAMALAKBJCIDHEGF"

  63. "DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD"

    1

    Returns: "DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD"

  64. "DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD"

    9

    Returns: "DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD"

  65. "H"

    5

    Returns: "H"

  66. "JIABBNYDBWHYKZUPCUXMUSHNXWJCZCZBMD"

    6

    Returns: "ABBBDHJIKNCPYMUWHYNZJCSUXBUCDMXWZZ"

  67. "XROMTVTPUGPDKBKTQDTG"

    8

    Returns: "MGODKBKPXRDGTVTPUQTT"

  68. "JCUTPFFMSLDRDFTODEBLEEALCAPOVMDNQLWGMCY"

    3

    Returns: "CJFFMUTPDDFSLDRBETOAECLAELMDNPOVGLCQMWY"

  69. "IKTSXRLBOYUWLNSPYVOPUUFKSXDPYOVINY"

    9

    Returns: "BIKLLNOPROPTSXFKSDYUWOINPYVSUUVXYY"

  70. "YUDMVZBMHXV"

    3

    Returns: "DMUYBHMVZVX"

  71. "RTKBXYCBBJOKETEHEEZFSLIPRLZGUKFGGZGG"

    7

    Returns: "BBBCJEKRTEEXYEFHIOKLTGKFGZGSGGPRLZUZ"

  72. "YBZYUXGPNTIDXFZTRLDOMJQKVBPQHBSIUJ"

    4

    Returns: "BUGPYNZYDXFIRTDLXJZTKBMOHBQIVJPQSU"

  73. "AWZQSQEFRRZEHTXNGZNKVDFPKEQJRRSJ"

    7

    Returns: "AEFQEHQRWZGSKNDFRZEKTXJNZJPVQRRS"

  74. "NAFDA"

    2

    Returns: "ADNAF"

  75. "EHGBWWZAXTOSNCWPMPGBAKSHPLRCUHRZVGLJFMYQ"

    8

    Returns: "ABEGHCNOMPGBWWZAXTHSCHWKLPGJFLSMPQRRUVYZ"

  76. "UJOMPFJHREEPWJMOJKEXJETMOXPKAYZENMLCTGMQNPKXN"

    4

    Returns: "JFJHUEOMPEJMRJEPWEJOKMOXAKTENXPCLYZGMMKNTNPQX"

  77. "CZDIAUWTBHGHTUHHLETIVAMS"

    7

    Returns: "ABCDGHHHZHIEUWTAILMTUSTV"

  78. "LOJRAPGVLNRAZKHRPUVT"

    9

    Returns: "AGAJKHLLNOPPRRRTVUVZ"

  79. "FFBKJISK"

    7

    Returns: "BFFIJKKS"

  80. "EPWHPIGAEYPLMINCKDMFYQQRQIJHIPRUSEMPAJBZHQWJ"

    6

    Returns: "EAEGHILPWCPDIFKYPMMINHIJPQYEQRQABJHMRUSJPQWZ"

  81. "TPTAJXZEIGOBEDYKBATQDNLBWQXOHKDXTIFMRRREWOPHCCLYC"

    4

    Returns: "AJPETGTBEXZDIAOBDKYBLNTQHKDOWQXFIMRXTEOHCRRCWCPLY"

  82. "EIMQWPJEOFXLIORCZDFMOXPGGOQJVOBDFYMWDPIKPWZS"

    2

    Returns: "EIMPJQWEFLOIXCODRFZMOGGXPJOOQBVDFMDYIWKPPSWZ"

  83. "CELWZHWPPOIEYKWDYYIMXEMB"

    3

    Returns: "CEHLPPWZEWIKODWYIMEYYBMX"

  84. "ROICIEFPRYZJJJUXJVKXMBOODNVBCHECYYZURLLYSPXNMKSDAA"

    9

    Returns: "CEFIIJJJJROKBMODPRYZBCCUXEVHXLLNOPNVKMDAAYYZURSSYX"

  85. "GNFD"

    9

    Returns: "DFGN"

  86. "ZHRQTGBRWVXFXGWGRFXKOMHZMSJVOFZGLOCJTR"

    6

    Returns: "BGHQRFZGRGTFRKWVXHXMWJMFXGOLCZJSOVORZT"

  87. "ZXDOLZDUZKAAKPDBEIEFLDMLVYOUQBWCW"

    1

    Returns: "XZDLODZUKZAAKDPBEEIFDLLMVOYQUBCWW"

  88. "EKRSQIM"

    1

    Returns: "EKRQSIM"

  89. "RSQBCTQKMIXDGXSPUYQLL"

    5

    Returns: "BCKMIRSQDGTQPQLXLSXUY"

  90. "ZEATAYVZZWFAHIPXPDIJMUAVVPVIDFITST"

    9

    Returns: "AAAEFHIPDZIJTAYVZZWDFIIMXPPSTTUVVV"

  91. "CRAYSXNIKASI"

    6

    Returns: "ACIAKINRSYSX"

  92. "BNXFJADDEIFIHROLLRMRLQBOPHHMKLIRHHPFQIOAZ"

    4

    Returns: "BADDENXFJFHIILLMLROBORHRHQIKPHHMFLIRAOPQZ"

  93. "FTC"

    3

    Returns: "CFT"

  94. "AMGSSULCRLYNZVWCJIWELRDONGTTSRCHSXCWSDFCHCIHF"

    5

    Returns: "AGCLLMNRSSUCIJEYLZVWDGNWOCRHRCSTTDCFCSXFWSHHI"

  95. "GQSBTHMGRJWYMODEWHJWFJEBWMJTYQQHE"

    6

    Returns: "BGGHJMMQSDTEHJRFWYBOEJWJMWEHQQWTY"

  96. "VKCPQZMBXCQJMYZCMJCTPISYGNRFGZCCCKSZXTJYZ"

    6

    Returns: "CBKCMJVMPCQZCJXIQMGYZFGNCTPCSYCKRJSZTXYZZ"

  97. "QRRKFDXSDJGUXXCPBRMZJSVLKIGNBLNFKUYBMXKR"

    6

    Returns: "DFDJGKQRRCBPXSJMRUXXGIBKLZFSVBKLKNMNRUXY"

  98. "TIIRSFKYTGDKTNAFKYABRGWVILOUTGPXUCQGKQLXMDZAICPR"

    1

    Returns: "ITIRFSKTYDGKNTAFKAYBGRVWILOTUGPUXCGQKLQMXDAZCIPR"

  99. "GTWLPWUIQBJQYHZENAWZRMGYLZDPMQCBRJIMJFPVXZJGIRMK"

    3

    Returns: "GLPTIWBJWUHQENQYAZMGRWZDLMYCZBPIQJFRJMPJGIVXZKMR"

  100. "GAGHBYMUXXFAMNMWNOTCCYBQLGPPUKRCWMBSQUIQZOPGAEQO"

    5

    Returns: "ABGGHFAMMMYNUXXCCBNLWGOTKPYCQBMPQUIROWGASEUOQZPQ"

  101. "TLUKXZUVUZWGRPMBVXAXJXLMYHNMHWTYIIYVIZVMZRFEFOBH"

    7

    Returns: "KLTUGRPMBUUXZAVJZWHLMHMVXIXIXINYMTRFWEYBFYVHZVOZ"

  102. "WOXONCPDPPXFOGEFMZMYXOAMDNSKOQQEWFJCLOZZZKEDS"

    2

    Returns: "OOWCXDNPPFOPXEFGMMXZAYDOMKNOSEQFQCWJLOZKEZZDS"

  103. "GIVKGTFJJVTQXGEAFDINNOLSXEZORXQBGZTYPWYTIXLL"

    2

    Returns: "GIGKVFJTJQTVEAXGDFINLNOESOXRZBGXQTPZWYITYLLX"

  104. "MIGHAEELTSBGXFYCGSSXPMUOSKPAXJRYLEJXWKZM"

    1

    Returns: "IMGAHEELSTBGFXCYGSSPXMOUKSAPJXRLYEJWXKMZ"

  105. "MRZQGJNBOEOJJFXHBZMWMPFOERHXQNEGDBUXOHWDDFTADDP"

    8

    Returns: "BEGJJFJHMRZQBMNFOEOHMNXEDZBWGPHODRDXQADDFOUXPTW"

  106. "LGDPRQGPWWVQFBVQGHHJPHLFDAJNQAJSGEQYWHQXYSIOV"

    8

    Returns: "DGGLFBPPGHHJRQHFWWVQAAVQDEGJPHLJNQIOQQSSVWXYY"

  107. "OJCGJHMUHZTAYLRJGTNZPIKWVPQURSOCJNVMJEYRQ"

    3

    Returns: "CGHOJHJMATULZGJYNRIKTPZPQRWVCJUNSOEJMVQRY"

  108. "IMPLUBYTMHWGKRFVVWRAVHGANOXWKJUZTZRTXVZZTOXZASJIA"

    6

    Returns: "BILHMGKMPFURYTAHWAGNOVVWRJVKRTTUXWTOVZAZJIXAZZSXZ"

  109. "IBDFBBOUTKWMRRHDNHQUTRLSVDMOHKVJLHJEAZYIYGVL"

    5

    Returns: "BBBDFIKMOHDNUTHWQRRLDMOHUTRJSVEAHJKVGLILVYZY"

  110. "KMVWCJQVDXGQGSXWEVPXIPMTQVMSHOTAWBZEAFYFPDDSLKMLCB"

    7

    Returns: "CDJGKGMQQVWEPIVMXPQMSXWHVAXBEATFVFSDOTDWKZBCLYLPMS"

  111. "DNFZYICHQCHMTKSYHSTHYRTJKBRMWXVRGMWHNSHYYYPIFEWV"

    5

    Returns: "DCFHCHNIZYKHMQHSRTJKYBSTMYRTGMHNRWXVHPIWEFSVYYYW"

  112. "YFQLBWZIBUVHLGOJJNKPPKOFTFGPVCVKXREAGOAYYHIGBFWFX"

    7

    Returns: "BBFIHLGYJQJKWZKLUVFFGOCNKOPPAEGTAOPVGVBXRFFHIWYYX"

  113. "FRKGYVBNGTZBSGVZTHEVZQIIHRCGAJEIQAUYSXJCIHSQAKUUJM"

    6

    Returns: "BFGGKBNRGSYVEHTQZIHIVZTACVZAEGIRJCIHJQAKUYSXJMQSUU"

  114. "GYNGKIMXTCFVLCNATYLYJKWNCXVJSPTHTLQUCWHDJLTK"

    1

    Returns: "GNYGIKMTXCFLVCANTLYJYKNWCVXJPSHTLTQCUHWDJLKT"

  115. "VWRSAAAWDIUAOIWSADESBEAIWODJAWDBPOAWDUISAWDOOPAWDZ"

    9

    Returns: "AAAADIIADVWRSABEWDEUAOBWSADDSIIAJWODOAWDOPOPWSUWWZ"

  116. "AWIBWEIFOJWEFIOJWEFIJWEOIFJIOEWJFIOWEJFIOEJAPQWSSQ"

    9

    Returns: "ABEEFFIIEFWIIWEIFOJWEIJOFWIEJFWIOEAJJOJWJOOPWQQSSW"

  117. "AJFKLAJSLKDFJLAJFASFD"

    8

    Returns: "AADFFJAJFAJKLDFSLKJLS"

  118. "ABASBDBDFFEWFWEBEF"

    5

    Returns: "AABBBDDESEBEFFFFWW"

  119. "VKCRJXBYNSBCHJZBYXRTQRNVCAKCKDWSMJWOGNEEIWWHUSYKPB"

    9

    Returns: "BBCCHJBJKVNQRNXCYASCDKKZJYXRTEREVGHIMNKWSBOWPSUWWY"

  120. "AAAWDIUAOIWDESBEAIWODJAWDBPOAWDUIUISAWDOOP"

    6

    Returns: "AAAADDEIBWAEUIODWADSBIAJWODIIWAOPDOWOUPUSW"

  121. "MFLRRBGLVASOYXEKEJLKDTWXYGVREUOECPDOOOUFNSVXENAJMU"

    3

    Returns: "FLBMGLRRAOSVEEJYXDKKLTGVRWXYECEDUOOOPFNOSUEAJVXMNU"

  122. "ZZYYXXRRACSSTTQQPPOONNMMLLZZKEEHHFFKJJHHEECCTTBBAA"

    9

    Returns: "ACRRSQQPPZZYYXXLLMMKSTTEEFFOONNEECCZZBBAHHAHKJJHTT"

  123. "ZZZZZZA"

    5

    Returns: "ZAZZZZZ"

  124. "ZYXWVUTSRQP"

    2

    Returns: "XWZYTSVUPQR"

  125. "DAECECBDCACEBDECBECBCBADAAECDABDEDEACDBEEAABBDDCAB"

    7

    Returns: "ABACCBCDCEBEBCDABAEADEABECCCACDBDEAABBDEDEABDCEEDD"

  126. "BCA"

    9

    Returns: "ABC"

  127. "ZYXRQPONMLKJIGFEDBCA"

    9

    Returns: "LKJIGFEDBZYXRQPONMAC"

  128. "CAB"

    3

    Returns: "ABC"

  129. "ZBYDALKCBDAAAAAAAAAABBCBDBZKAAZZAAAAAAKKKKLAKZZKZM"

    7

    Returns: "ABBAAAAZAYDALKCADAAABAABBAAAACADBZKAAZZKKKKKKLMZZZ"

  130. "ZZAZAZZZZ"

    2

    Returns: "AZAZZZZZZ"

  131. "JJNHFKNCGFDGMBJHKLFIGJDDKBMNJHNFCEGNMDMFFAGIKMGBFA"

    5

    Returns: "FHCGFJJNBDKNGFHGIMDJBKLDHJFCEKGMNJDNAFFGNMBMAFGIKM"

  132. "ZZZBCD"

    1

    Returns: "ZZBZCD"

  133. "CAB"

    2

    Returns: "ABC"

  134. "FASDFDASFDASHPHWEQUIRZCXVXCVJASNBAKFSADLFHQASDFOSD"

    5

    Returns: "AADDDFASFFHESHIPSCQRWCUJASZBXVXAVADFNFAKDSFHLDOQSS"

  135. "AZZA"

    1

    Returns: "AZAZ"

  136. "AZZZZZBZZZAZZZZZA"

    3

    Returns: "AZZBZZZAZZZZZAZZZ"

  137. "IAFLODBS"

    3

    Returns: "AFDIBLOS"

  138. "FFAXAX"

    2

    Returns: "AFAFXX"

  139. "WRYVG"

    2

    Returns: "RVWGY"

  140. "AEEAEDDCDDCDEFBCDFBFBDBCFCFDFFDFEEEEEEEEAFDEDADDBB"

    2

    Returns: "AAEDECEDCDDDBCEFBDBFBFCDCDFFDFEFEFEEEEAEDEDFAEBBDD"

  141. "ADDDCDDCBB"

    3

    Returns: "ACDDCBDBDD"


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: