Statistics

Problem Statement for "WordSplit"

Problem Statement

Given a string of lowercase letters, I want to split it up into pieces so that the letters in each piece are distinct. I want to form as few pieces as possible. Given theString return a String[] containing the pieces sorted alphabetically.

If more than one way of splitting is minimal, return the sorted sequence of pieces that is first lexicographically. That means that the first element in the sequence that differs is earlier alphabetically.

Definition

Class:
WordSplit
Method:
pieces
Parameters:
String
Returns:
String[]
Method signature:
String[] pieces(String theString)
(be sure your method is public)

Constraints

  • theString will contain between 1 and 50 characters, inclusive.
  • Each character in theString will be a lowercase letter ('a'-'z').

Examples

  1. "facetiously"

    Returns: {"facetiously" }

    No splits are required since all the letters are distinct.

  2. "aaaaa"

    Returns: {"a", "a", "a", "a", "a" }

    This is the only legal split.

  3. "aba"

    Returns: {"a", "ab" }

    We need one split to separate the 'a's. Our choices are a/ba or ab/a. We return the one whose pieces form the earlier sequence lexicographically.

  4. "alabamaalleluiahalas"

    Returns: {"a", "a", "a", "al", "al", "bam", "eluiah", "l", "las" }

  5. "aaaaaaaaaaaaaaaaaaaaaaaaaabaaaaaaaaaaaaaaaaaaaaaaa"

    Returns: {"a", "a", "a", "a", "a", "a", "a", "a", "a", "a", "a", "a", "a", "a", "a", "a", "a", "a", "a", "a", "a", "a", "a", "a", "a", "a", "a", "a", "a", "a", "a", "a", "a", "a", "a", "a", "a", "a", "a", "a", "a", "a", "a", "a", "a", "a", "a", "a", "ab" }

  6. "uhtoj"

    Returns: {"uhtoj" }

  7. "nsxntxvnrmxywwwnwnyprqyulvlxmryyyoywqvlwuszvowtor"

    Returns: {"lwuszvo", "lxmry", "nrmxyw", "nsx", "ntxv", "oywqv", "prqyulv", "w", "wn", "wny", "wtor", "y", "y" }

  8. "kkkk"

    Returns: {"k", "k", "k", "k" }

  9. "uxzpokjjqkjxxurnsjvlsxwvrxlstyjzrnkjltnsjkpjmxuxsu"

    Returns: {"j", "j", "jltns", "kpjmxu", "lsxwvr", "qkjx", "uxzpokj", "xlstyjzrnk", "xsu", "xurnsjv" }

  10. "djifgiedfhiejjdegjhiijdeded"

    Returns: {"d", "de", "degjhi", "dfhiej", "dji", "fgie", "ijde", "j" }

  11. "vm"

    Returns: {"vm" }

  12. "pmmooonmmpomnmomopnmopmmmmoopnpn"

    Returns: {"m", "m", "m", "m", "mo", "mo", "mo", "mop", "mopn", "o", "onm", "opn", "pm", "pn", "pomn" }

  13. "ornwwtrvquuovrurqnpuu"

    Returns: {"npu", "ornw", "u", "uovr", "urq", "wtrvqu" }

  14. "wqxtwspyyyyrwqotstyq"

    Returns: {"qxtwspy", "styq", "w", "y", "y", "yrwqot" }

  15. "rmmqrnrmrp"

    Returns: {"mqr", "mrp", "nr", "rm" }

  16. "lmlkllmlmkklmmmmkkmmkmkmllllklkmlkmmmmlkkll"

    Returns: {"kl", "kl", "klm", "km", "km", "kml", "l", "l", "l", "l", "lk", "lkm", "lkm", "lm", "lm", "lmk", "m", "m", "m", "m", "m", "mk", "mlk" }

  17. "iypsshyffzmujwggwsqjxzprkg"

    Returns: {"fzmujwg", "g", "gwsqjxzprk", "iyps", "shyf" }

  18. "pooqqqooonpqpqppoqoqqppqopppqnnnppoponn"

    Returns: {"n", "n", "np", "o", "onp", "op", "oq", "oq", "p", "po", "po", "pon", "poq", "pq", "pqn", "q", "qo", "qp", "qp", "qp" }

  19. "nnsmpmn"

    Returns: {"mn", "n", "nsmp" }

  20. "cccccccccc"

    Returns: {"c", "c", "c", "c", "c", "c", "c", "c", "c", "c" }

  21. "qoputvspovvsvpotosq"

    Returns: {"osq", "pov", "qoputvs", "svpot", "v" }

  22. "jlfmegkipjgnk"

    Returns: {"ipjgnk", "jlfmegk" }

  23. "bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"

    Returns: {"b", "b", "b", "b", "b", "b", "b", "b", "b", "b", "b", "b", "b", "b", "b", "b", "b", "b", "b", "b", "b", "b", "b", "b", "b", "b", "b", "b", "b", "b", "b", "b", "b", "b", "b", "b", "b", "b", "b", "b", "b", "b", "b", "b", "b", "b", "b", "b", "b", "b" }

  24. "pppoqqoqooqoqqqpoppqpqoqpoqooqoqpopoqopqpoop"

    Returns: {"o", "op", "op", "op", "oq", "oq", "oq", "oqp", "p", "p", "poq", "poq", "pq", "pqo", "q", "qo", "qo", "qo", "qp", "qpo", "qpo" }

  25. "kllkklkkkkllklkkklkkklkkllklklkklkkkllkllkk"

    Returns: {"k", "k", "k", "k", "k", "k", "k", "k", "k", "k", "kl", "kl", "kl", "kl", "kl", "kl", "kl", "kl", "kl", "l", "lk", "lk", "lk", "lk", "lk", "lk", "lk" }

  26. "otqnpsruqsotqos"

    Returns: {"otqnps", "qos", "ruqsot" }

  27. "qorpcbkgifeghjmiqlhlnoocpnjaihmliqpacirk"

    Returns: {"acirk", "eghjmiql", "hlno", "hmliqp", "ocpnjai", "qorpcbkgif" }

  28. "glfolfekfiqqjoldkhophoogihfekkhfmdlggbdcfkjpnmphjl"

    Returns: {"dkho", "ekfiq", "gbdcfkjp", "glf", "khfmdlg", "nmphjl", "ogihfek", "olf", "pho", "qjol" }

  29. "dqiciaubnfircrrltumgeuosflucfsoebutcrhamlgctpuil"

    Returns: {"aubnfir", "butcrhaml", "ci", "cr", "dqi", "euosf", "gctpuil", "lucfsoe", "rltumg" }

  30. "fgrxslwsxfiqxsmekcaacolksvgicfyqwurmnlxwmwj"

    Returns: {"ac", "fgrxs", "fiqxsmekca", "lwsx", "lxw", "mwj", "olksvgicfyqwurmn" }

  31. "hhcqffidhpglihojkphepmqoipekcdogcjmhkccclllhlhik"

    Returns: {"c", "c", "cjmhk", "cl", "fidhp", "glihojkp", "h", "hcqf", "hepmqo", "ipekcdog", "l", "lh", "lhik" }

  32. "kacacfkbbgfdhhjkbekgeaidajbdfiafigabafkkhahhd"

    Returns: {"a", "acfkb", "afig", "ah", "ajbdfi", "bafk", "bgfdh", "hd", "hjkbe", "kac", "kgeaid", "kh" }

  33. "fbjuborjpmaftorgngkaehregdmhhneotjsfcfhqlrup"

    Returns: {"aftorg", "borjpm", "cfhqlrup", "egdmh", "fbju", "hneotjsf", "ngkaehr" }

  34. "dagonmdspclweqtkvbedlgwevsuiwwuxpwiwelorwpqenq"

    Returns: {"agonmdspclwe", "d", "elorwpq", "enq", "evsuiw", "iw", "pw", "qtkvbedlgw", "wux" }

  35. "jndfgatqgdueqkvrsmekrnkoqselqsjsuvvdrekm"

    Returns: {"ek", "elqs", "gdueqkvrsm", "jndfgatq", "jsuv", "rnkoqs", "vdrekm" }

  36. "gkgfebfgfccdhlbklkfkjjbkfcbfdkblffckdbfghgegbgk"

    Returns: {"bf", "bf", "bfg", "bgk", "cdhlbk", "dkblf", "eg", "fckd", "fkj", "g", "gfc", "hg", "jbkfc", "kgfe", "lk" }

  37. "qcpyxmnozptfljyujhwyrzrylgmqhicuttpeixmwifrkwpswr"

    Returns: {"ifrkw", "jhwyr", "mnozptfljyu", "pswr", "qcpyx", "tpeixmw", "zrylgmqhicut" }

  38. "ninqpjniifpgejfednrcocnlqprhqpldpigdlrgcdnepm"

    Returns: {"cnlqp", "fednrco", "gcdnepm", "ifpgej", "in", "n", "pigdlr", "qpjni", "rhqpld" }

  39. "wdqxvocfwkvwaotmdwerndtmfcutpralmgpcfkigfdqobhmom"

    Returns: {"almgpcf", "cfw", "cutpr", "kigfdqobhm", "kvwaotmd", "om", "wdqxvo", "werndtmf" }

  40. "fggiheikckjddcenmikgffncnliehfgefchmikkcgenljid"

    Returns: {"ckjd", "cnliehf", "dcenmikgf", "eik", "fg", "fn", "gefchmik", "gih", "kcgenljid" }

  41. "jcodrtigexqttoeivismopfjpsogpuljlegkxffcrfrkw"

    Returns: {"exqt", "fcr", "fjp", "frkw", "ismop", "jcodrtig", "jlegkxf", "sogpul", "toeiv" }

  42. "mlllllmlllllllmmmmmllllmlmllllmlllmllmllm"

    Returns: {"l", "l", "l", "l", "l", "l", "l", "l", "l", "l", "l", "l", "l", "l", "l", "l", "l", "l", "lm", "lm", "lm", "lm", "lm", "lm", "lm", "lm", "m", "m", "m", "ml", "ml" }

  43. "jjhjhihihhhhjjjhhihijhjjijihiihhjjiijjhjhihhhhhhih"

    Returns: {"h", "h", "h", "h", "h", "h", "h", "h", "h", "hi", "hi", "hi", "hi", "hij", "hj", "hj", "hj", "ih", "ij", "j", "j", "jh", "jh", "jh", "jhi", "jhi", "ji", "ji", "ji" }

  44. "vxuutuutuxtxvwwwwtxvuuxvxxuutxxwxttwvwwuttxvxwvw"

    Returns: {"tu", "tux", "tw", "tx", "txvw", "u", "u", "utx", "ux", "vw", "vw", "vx", "vxu", "vxw", "w", "w", "wtxvu", "wut", "wxt", "x", "xu" }

  45. "bddcdddbbdcbbdbcbdccccddccdbbdcbbdcbddcbcdcd"

    Returns: {"b", "b", "b", "bcd", "bd", "bd", "bdc", "bdc", "bdc", "bdc", "c", "c", "cd", "cd", "cd", "cdb", "d", "d", "db", "dbc", "dc", "dc" }

  46. "mkkmkmllkklkkmkmkllkmmmlkmkmllmmmmklmkkl"

    Returns: {"k", "k", "kl", "kl", "km", "km", "km", "kml", "kml", "lk", "lkm", "lm", "lmk", "m", "m", "m", "mk", "mk", "mkl", "ml" }

  47. "fghgfgifhfghigffifihhiigihgggfhgihgifhiighgiifgf"

    Returns: {"f", "fg", "fg", "fhgi", "fhi", "fi", "fih", "g", "g", "gi", "gifh", "hgf", "hgi", "hi", "higf", "ifg", "ig", "igh", "ihg" }

  48. "hgffghfgiihihghgifiiggghfggffifhhihhfhhgihgghhhgg"

    Returns: {"f", "fg", "fg", "fh", "fi", "g", "g", "gf", "gh", "gh", "h", "h", "h", "hfgi", "hg", "hg", "hgf", "hgi", "hgi", "hi", "ifh", "ig", "ih", "ihg" }

  49. "kjkjiikjijjiikjijkiikjiijjkjkkkikjkiikkjijkkijjkjj"

    Returns: {"i", "i", "ij", "ij", "ijk", "ijk", "ik", "ik", "ikj", "ikj", "ikj", "j", "j", "ji", "jk", "jk", "jk", "jki", "k", "k", "kij", "kj", "kj", "kji" }

  50. "nomqmmqnqmqqqonqpnnonoqnqqpnnoqnqmnqmnonmqpqon"

    Returns: {"m", "mn", "mnq", "mq", "mq", "no", "nomq", "noq", "noq", "nq", "nq", "nq", "onmq", "pqon", "q", "qon", "qpn", "qpn" }

  51. "edffdfgegffdgedddffdfedfdfeddddgdfggfgedgefge"

    Returns: {"d", "d", "d", "d", "df", "dfg", "dfg", "dg", "dge", "edf", "egf", "f", "fd", "fd", "fdge", "fed", "fed", "fge", "fge", "g" }

  52. "vvtuxtuutuxvvxtxvvwxxwwxttxtwuwtuxwvxuuuwuxvuwtxt"

    Returns: {"t", "t", "tu", "tuxv", "txv", "u", "u", "u", "uwtx", "v", "vtux", "vwx", "vx", "wtux", "wuxv", "wvxu", "wxt", "xtwu", "xw" }

  53. "abaabbdadcacacbababcbbdbaabadbbaddccdaabdaaddcbac"

    Returns: {"a", "a", "ab", "ab", "ab", "ab", "ab", "abd", "ac", "ac", "acb", "ad", "adb", "adc", "b", "bad", "bd", "cb", "cda", "dba", "dc", "dcb" }

  54. "pqprqpprqppqqrpppqqpprpprqrrqprqppqpqrrprp"

    Returns: {"p", "p", "p", "p", "pq", "pq", "pq", "pq", "pqr", "pr", "pr", "prq", "prq", "qp", "qr", "qrp", "rp", "rp", "rqp", "rqp" }

  55. "gffggggffffgfgffgfgggfffgfggfgffffffgfgffgggg"

    Returns: {"f", "f", "f", "f", "f", "f", "f", "f", "f", "fg", "fg", "fg", "fg", "fg", "fg", "fg", "fg", "fg", "fg", "g", "g", "g", "g", "g", "g", "gf", "gf", "gf", "gf", "gf" }

  56. "plnlmlpmmmmoommnmolnnppnpmnnlnllmmponpnpmnpnln"

    Returns: {"lm", "lm", "ln", "lpm", "m", "m", "mn", "mo", "moln", "mpon", "nl", "nl", "np", "om", "pln", "pmn", "pmn", "pn", "pn", "pn" }

  57. "uvuvvvvvvvvvuuvuuuvuvuuuuuvvuuuvvvvvvvuvuvuuv"

    Returns: {"u", "u", "u", "u", "u", "u", "u", "uv", "uv", "uv", "uv", "uv", "uv", "uv", "uv", "v", "v", "v", "v", "v", "v", "v", "v", "v", "v", "v", "v", "vu", "vu", "vu", "vu", "vu" }

  58. "lkmjljmlklmlljlkjlmjmnmknnmkmkjlnlnklnlllllmmljnmn"

    Returns: {"jl", "jl", "jml", "jmn", "kjlm", "kl", "kl", "l", "l", "l", "l", "lkm", "lm", "ln", "mkjln", "mkn", "ml", "mljn", "mn", "nl", "nmk" }

  59. "lkklkjklkljjllljjkklkjkkjkklklkjlklkkllk"

    Returns: {"jk", "jk", "jk", "jkl", "jl", "jlk", "k", "k", "k", "k", "kl", "kl", "kl", "kl", "kl", "klj", "l", "lj", "lk", "lk", "lk" }

  60. "iiiigghigggiiihiggiigighhhiigihiihhiighhhiihihhh"

    Returns: {"g", "g", "ghi", "gi", "gi", "gi", "h", "h", "h", "h", "hi", "hi", "hi", "hi", "hig", "i", "i", "i", "i", "i", "i", "ig", "ig", "igh", "igh", "ih", "ih", "ih" }

  61. "edebcebdbfbdffcebbfeeffcffbfdffefeedbdfbedf"

    Returns: {"bdf", "bdf", "bedf", "bf", "bf", "bfe", "cebd", "cf", "deb", "df", "e", "ed", "ef", "f", "f", "fceb", "fe", "fe" }

  62. "bceddccdbcdbdabdeadbdaeccbecccdeadbdccdadbb"

    Returns: {"abd", "ad", "adb", "b", "bcd", "bced", "bd", "bdaec", "bdc", "bec", "c", "c", "cd", "cd", "cde", "dc", "ead" }

  63. "jnjlnjknnlknlknlklljmknknmnjnjnmjkmllnmkl"

    Returns: {"jkml", "jkn", "jln", "jn", "jn", "jnm", "kl", "kl", "kn", "knl", "knl", "ljmkn", "lnm", "mn", "nl" }

  64. "poqrroqqoqspsqoqoqrrrssrqqqrooqpopqqrrrrrq"

    Returns: {"opq", "oq", "oqp", "oqr", "oqs", "poqr", "psq", "q", "q", "qr", "qro", "r", "r", "r", "r", "roq", "rq", "rs", "srq" }

  65. "olmommmlloomnmlnnknkoomnllnnlnmkkkmokonmlmmkn"

    Returns: {"k", "kmo", "konm", "lm", "ln", "lnmk", "lo", "m", "mkn", "ml", "mln", "n", "nk", "nko", "olm", "om", "omn", "omnl" }

  66. "wwywwyuxuyyxuyvuvvuxwvvwuxxuyyyxxvxvyxwv"

    Returns: {"uv", "uxwv", "uy", "uyv", "v", "vwux", "w", "w", "wy", "wyux", "xuy", "xv", "xv", "y", "yx", "yx", "yxwv" }

  67. "sssrrsrsssrrrsssrrrrrrsrsrrrssrrsrssssssrrrsrrsr"

    Returns: {"r", "r", "r", "r", "r", "r", "r", "r", "r", "r", "rs", "rs", "rs", "rs", "rs", "rs", "rs", "rs", "rs", "rs", "s", "s", "s", "s", "s", "s", "s", "s", "sr", "sr", "sr", "sr", "sr" }

  68. "dkdkdkdkdkdkdkdkdkdkdkdadkdkdkdkdkdkdkdkdk"

    Returns: {"adk", "d", "dk", "dk", "dk", "dk", "dk", "dk", "dk", "dk", "dk", "dk", "dk", "dk", "dk", "dk", "dk", "dk", "dk", "dk", "dk" }

  69. "akakakakakakakakakakakdkdkdkdkdk"

    Returns: {"ak", "ak", "ak", "ak", "ak", "ak", "ak", "ak", "ak", "ak", "ak", "dk", "dk", "dk", "dk", "dk" }

  70. "akakakakakadakakakakakakak"

    Returns: {"a", "ak", "ak", "ak", "ak", "ak", "ak", "ak", "ak", "ak", "ak", "ak", "dak" }

  71. "akakakakakakdkakakakakakak"

    Returns: {"ak", "ak", "ak", "ak", "ak", "ak", "ak", "ak", "ak", "ak", "ak", "ak", "dk" }

  72. "gxfezxdcxba"

    Returns: {"cxba", "ezxd", "gxf" }

  73. "gxfezxdcxbax"

    Returns: {"ax", "cxb", "ezxd", "gxf" }

  74. "gxfeazaxadcxbax"

    Returns: {"adcx", "ax", "bax", "gxfeaz" }

  75. "x"

    Returns: {"x" }

  76. "abcdefghijklmnopqrstuvwxyz"

    Returns: {"abcdefghijklmnopqrstuvwxyz" }

  77. "abcdefghijklmnopqrstuvwxybcdefghijklmnopqrstuvzwxy"

    Returns: {"abcdefghijklmnopqrstuvwxy", "bcdefghijklmnopqrstuvzwxy" }

  78. "bacbacb"

    Returns: {"acb", "acb", "b" }

  79. "ahab"

    Returns: {"a", "hab" }

  80. "bacadaeafagahaiajakalamanaoapaqarasatauav"

    Returns: {"a", "a", "a", "a", "a", "a", "a", "a", "a", "ad", "bac", "eaf", "gah", "iaj", "kal", "man", "oap", "qar", "sat", "uav" }

  81. "gfbeaeedceadefedcdecfaagdbfdeagaebgcbeefgebbceadfa"

    Returns: {"a", "ade", "ae", "aeb", "agd", "bceadf", "bfdeag", "ce", "decfa", "e", "ed", "fedc", "fgeb", "gcbe", "gfbe" }

  82. "sdlkfjasdkfhksdhfksjdhfkjshdfkjhsshdkjhfksjhdfhshf"

    Returns: {"asdkfh", "dfh", "dfkjhs", "dkjh", "fkjsh", "fksjdh", "fksjh", "ksdh", "sdlkfj", "sh", "shf" }

  83. "cacbcecdcxacebcabdbcdabaaabdeabacbaacadaaeabacadd"

    Returns: {"a", "a", "a", "a", "a", "a", "ab", "abde", "ac", "acb", "aceb", "ba", "bc", "bcda", "c", "cabd", "cad", "cad", "cx", "d", "eab", "ecd" }

  84. "zbczbaz"

    Returns: {"az", "czb", "zb" }

  85. "babcdefghijlkmnopqrstuvwxyzabcdefghijlkmnopqrstuvw"

    Returns: {"abcdefghijlkmnopqrstuvw", "abcdefghijlkmnopqrstuvwxyz", "b" }

  86. "zbz"

    Returns: {"bz", "z" }

  87. "abzacb"

    Returns: {"ab", "zacb" }

  88. "abzacd"

    Returns: {"a", "bzacd" }

  89. "abaabac"

    Returns: {"a", "a", "ab", "bac" }

  90. "aaaaaaaaaaaaaaaaaaaabababcaabaaaaaaaabaaaaaaaaaaaa"

    Returns: {"a", "a", "a", "a", "a", "a", "a", "a", "a", "a", "a", "a", "a", "a", "a", "a", "a", "a", "a", "a", "a", "a", "a", "a", "a", "a", "a", "a", "a", "a", "a", "a", "a", "a", "a", "a", "a", "a", "a", "ab", "ab", "ab", "ab", "abc" }

  91. "wafdyioipacfaz"

    Returns: {"az", "ipacf", "wafdyio" }

  92. "edce"

    Returns: {"ce", "ed" }

  93. "zzyzzyyyyyzyzyyyzzzzzzyzzyyzzzzyzzzyzyzzzyzyzyzyyz"

    Returns: {"y", "y", "y", "y", "y", "yz", "yz", "yz", "yz", "yz", "yz", "yz", "yz", "yz", "yz", "z", "z", "z", "z", "z", "z", "z", "z", "z", "z", "z", "z", "z", "zy", "zy", "zy", "zy", "zy", "zy" }

  94. "woaokajswstwclduchuidrzdtdjnklgaiyuycjosdvuafhdnjb"

    Returns: {"afhdnjb", "chuid", "djnklgaiyu", "okajsw", "rzdt", "stwcldu", "woa", "ycjosdvu" }

  95. "dabcdeeedabcdeeedabcdeeedabcdeeedabcdeee"

    Returns: {"abcde", "abcde", "abcde", "abcde", "abcde", "d", "e", "e", "e", "e", "e", "e", "ed", "ed", "ed", "ed" }

  96. "abcdeabcdeabcdeabcdeabcdeabcdeabcdeabcdeabcdeabcde"

    Returns: {"abcde", "abcde", "abcde", "abcde", "abcde", "abcde", "abcde", "abcde", "abcde", "abcde" }

  97. "abcadeafgahiabcadeafgahiabcadeafgahiabcadeafgahiaz"

    Returns: {"a", "a", "a", "a", "a", "a", "a", "a", "abc", "bcade", "bcade", "bcade", "deafg", "fgahi", "fgahi", "fgahi", "hiaz" }

  98. "abba"

    Returns: {"ab", "ba" }

  99. "abcab"

    Returns: {"ab", "abc" }

  100. "baba"

    Returns: {"ba", "ba" }

  101. "abadbcababababdabgfababadbdadbabadbdabdabadbadbab"

    Returns: {"a", "ab", "ab", "ab", "ab", "ab", "ab", "ab", "ab", "abd", "adb", "adb", "adbc", "bad", "bad", "bd", "bda", "dabgf", "dba" }

  102. "jaksldkkfjdladhsjakajsjsjsakaasjdfhdaaksjdfhdjakd"

    Returns: {"a", "ajs", "akd", "aksjd", "asjd", "dhsjak", "dk", "fhda", "fhdj", "jaksl", "js", "jsak", "kfjdla" }

  103. "abcbabcababcababacbcabcababcaababcadadbcabacbaabad"

    Returns: {"a", "a", "a", "ab", "ab", "ab", "acb", "adbc", "ba", "ba", "ba", "bac", "bad", "bca", "bca", "bca", "bca", "bca", "bcad", "cba" }

  104. "cacbadcababcababcabdabebafabgbahabiabjabklmnopacq"

    Returns: {"a", "ab", "ab", "ab", "ab", "ab", "abc", "bklmnopacq", "ca", "cab", "cabd", "cbad", "ebaf", "gbah", "iabj" }

  105. "bab"

    Returns: {"ab", "b" }

  106. "babcbdbvbubtbsbrabjbkblbmbanbobpbqbrbsabtbubvbwabx"

    Returns: {"ab", "ab", "ab", "abx", "anb", "b", "b", "b", "b", "b", "b", "b", "bq", "br", "cbd", "jbk", "lbm", "obp", "rbs", "tbs", "tbu", "vbu", "vbw" }

  107. "xyaxypppppqbaptttaklcxjzhjsdaodksapqbp"

    Returns: {"apt", "axyp", "bp", "dksapq", "hjsdao", "p", "p", "p", "pqb", "t", "taklcxjz", "xy" }

  108. "dcdbdcdadcdbdcddcdbdcdadcdbdcddcdbdcdadcdbdcddcd"

    Returns: {"ad", "ad", "ad", "bd", "bd", "bd", "bd", "bd", "bd", "cd", "cd", "cd", "cd", "cd", "cd", "cd", "cd", "cd", "cd", "cd", "cd", "cd", "d", "d", "d", "d" }

  109. "dbabacebccabfebabfabaabcabebfbccfefgabafabbabfabab"

    Returns: {"a", "ab", "ab", "ab", "abc", "abf", "b", "ba", "ba", "bac", "bc", "bfa", "cabfe", "cf", "dba", "ebc", "ebf", "efgab", "fab" }

  110. "bdacdc"

    Returns: {"bdac", "dc" }

  111. "abaabaabaabaabaabaabaabaabaabaabaabaabaabaabacdefg"

    Returns: {"a", "a", "a", "a", "a", "a", "a", "a", "a", "a", "a", "a", "a", "a", "a", "ab", "ab", "ab", "ab", "ab", "ab", "ab", "ab", "ab", "ab", "ab", "ab", "ab", "ab", "bacdefg" }

  112. "abacadaeafagahaiajjaiahagafaeadacabazzxxyywwvvvvv"

    Returns: {"a", "a", "a", "a", "a", "a", "a", "a", "ab", "baz", "cad", "dac", "eaf", "fae", "gah", "hag", "iaj", "jai", "v", "v", "v", "v", "wv", "xy", "yw", "zx" }

  113. "fsdafsdffrewrfsdcfdsdfasdfrdsfdafdsafasddfsdafsdfa"

    Returns: {"af", "asd", "asdf", "cfd", "daf", "daf", "dfs", "dsaf", "ewrfsd", "fr", "fsd", "rdsf", "sdf", "sdf", "sdfa" }

  114. "aabbabcqlkjhgfdsamnbabqwerbabioplkjhgfsdfsadfwrerw"

    Returns: {"a", "ab", "ab", "ab", "abioplkjhgf", "b", "cqlkjhgfdsamnb", "erw", "qwerb", "sadfwr", "sdf" }

  115. "nadjfljadljasdlnnasnalsnalslsfnaonvhaoeadfad"

    Returns: {"ad", "adf", "jadl", "jasdln", "lsfnao", "nadjfl", "nals", "nals", "nas", "nvhaoe" }

  116. "fbcfhfegdbabccbagedchchbbhgcfedfdcghaabeffcbbhghfb"

    Returns: {"abc", "abef", "agedch", "bcf", "bh", "bhgcfed", "cb", "chb", "f", "fcb", "fdcgha", "ghfb", "hfegdb" }

  117. "baaaba"

    Returns: {"a", "a", "ab", "ba" }

  118. "bfacbdaabdbabcdcadbvvasdvcxvbsasvxcxvzxcsdvcxccds"

    Returns: {"ab", "abcd", "asdv", "asvx", "bda", "bfac", "c", "cadbv", "cds", "cx", "cxv", "cxvbs", "db", "v", "zxcsdv" }

  119. "acbacbabcabcacbabcabcabcabcabcabcabcabcbacbacbacba"

    Returns: {"ab", "abc", "abc", "abc", "abc", "abc", "abc", "abc", "abc", "abc", "acb", "acb", "acb", "cba", "cba", "cba", "cba" }

  120. "dacacababababcacada"

    Returns: {"a", "a", "a", "ab", "ab", "abc", "cab", "cad", "dac" }

  121. "abacbadcbaedcbafedcbagfedcbagfedcbahgfedcbaihgfedc"

    Returns: {"a", "bac", "badc", "baedc", "bafedc", "bagfedc", "bagfedc", "bahgfedc", "baihgfedc" }

  122. "abcb"

    Returns: {"ab", "cb" }

  123. "ababababababababaccbabaaaaabababababababababababab"

    Returns: {"a", "a", "a", "a", "ab", "ab", "ab", "ab", "ab", "ab", "ab", "ab", "ab", "ab", "ab", "ab", "ab", "ab", "ab", "ab", "ab", "ab", "ab", "ba", "bac", "cba" }

  124. "afkbvefwvbtuwevrtnvluerkaerjakgehdfagjkhdfkjgdfhgj"

    Returns: {"afkbv", "btuwevr", "dfhgj", "efwv", "ehdfagjk", "erjakg", "hdfkjg", "tnvluerka" }

  125. "zxcasdfqwsdafzxclqwerioasdaspyasdfasdzxcv"

    Returns: {"as", "asd", "asdzxcv", "pyasdf", "sdafzxclqwerio", "zxcasdfqw" }

  126. "cbcbacaacaacaaaabbbcbcabcaacbabbbabccaabababacaab"

    Returns: {"a", "a", "a", "a", "a", "a", "ab", "ab", "ab", "ab", "ab", "abc", "ac", "ac", "acb", "b", "b", "b", "bac", "bc", "bca", "bca", "ca", "ca", "cb", "cba" }

  127. "abaaababbabababbabababaabaabababaabacbabaabbabaab"

    Returns: {"a", "a", "a", "a", "a", "ab", "ab", "ab", "ab", "ab", "ab", "ab", "ab", "ab", "ab", "ab", "ab", "ab", "ab", "acb", "b", "ba", "ba", "ba", "ba", "ba", "ba" }

  128. "gbgbbgbbbwbbghgbbgbbwbgbgbbwgbgbgbbwwggbgbbgggbwbw"

    Returns: {"b", "b", "b", "b", "b", "b", "b", "bg", "bg", "bg", "bg", "bg", "bg", "bg", "bw", "bw", "bw", "bwg", "g", "gb", "gb", "gb", "gb", "gbw", "hgb", "wbg", "wg" }

  129. "aaaaa"

    Returns: {"a", "a", "a", "a", "a" }

  130. "ababababaaaa"

    Returns: {"a", "a", "a", "a", "ab", "ab", "ab", "ab" }

  131. "abacbdcdaabacbdcchsgjqjhagfabacbdcedgfhagsdabbcc"

    Returns: {"a", "ab", "ab", "acbd", "acbd", "bac", "bc", "bdc", "c", "cda", "cedgfha", "chsgj", "gsdab", "qjhagf" }

  132. "abadacabcabadacabcabadacabcabadacabcabadacabcabads"

    Returns: {"a", "a", "a", "a", "a", "a", "a", "a", "ab", "abc", "abc", "abc", "bad", "bad", "bads", "cab", "cab", "cab", "cab", "dac", "dac", "dac" }

  133. "azab"

    Returns: {"a", "zab" }

  134. "bazzab"

    Returns: {"baz", "zab" }

  135. "babb"

    Returns: {"ab", "b", "b" }

  136. "abaabcbdfhjasbccbcccbcabcabc"

    Returns: {"a", "ab", "ab", "abc", "abc", "asbc", "bc", "bc", "c", "c", "c", "cbdfhj" }

  137. "abaabcbdfhjasbccbababababacbcabcbabcabcbabcabcccbc"

    Returns: {"a", "ab", "ab", "ab", "ab", "ab", "ab", "ab", "abc", "abc", "abc", "acb", "asbc", "bc", "c", "c", "cab", "cb", "cb", "cb", "cbdfhj" }

  138. "yukqgdwkhjgsackdygcfisladfgiudgciuzgcyis"

    Returns: {"adfgi", "dwkhjgsac", "kdygcfisl", "udgci", "uzgcyis", "yukqg" }

  139. "cbcbczaqedkfjbndfzcvbz"

    Returns: {"bc", "bczaqedkf", "bz", "c", "jbndfzcv" }

  140. "cbcbczaqedkfjbndfzcvbzzfwersza"

    Returns: {"bc", "bczaqedkf", "bz", "c", "ersza", "jbndfzcv", "zfw" }

  141. "ababadweqweasddqweqweqwdaseqwereaasdqeqeasdaeeqew"

    Returns: {"a", "ab", "ae", "asdqe", "badwe", "dqwe", "e", "ea", "qeasd", "qew", "qwdase", "qwe", "qweasd", "qwer" }

  142. "theansistringclassimplementsaficlasscharacterstraa"

    Returns: {"a", "acter", "as", "as", "mentsaficl", "schar", "simple", "stra", "stringcl", "theansi" }

  143. "bcdab"

    Returns: {"ab", "bcd" }

  144. "cubcanxzgnxmncplwnoanlnodbzahsftrkmjsfbouqbpwrwwc"

    Returns: {"an", "bcan", "bpw", "cplwno", "cu", "jsfbouq", "lnodbzahsftrkm", "rw", "wc", "xmn", "xzgn" }

  145. "dshacbaqpoeijkdnbxxaabbabacbahhanah"

    Returns: {"ab", "ah", "aqpoeijkdnbx", "ba", "ba", "cbah", "dshacb", "han", "xa" }

  146. "ababacabacabadabasabacabacabarabadabarasabahabaga"

    Returns: {"a", "a", "a", "a", "a", "a", "a", "a", "a", "a", "a", "a", "ab", "ab", "bac", "bac", "bac", "bac", "bad", "bad", "bag", "bah", "bar", "bas", "ras" }

  147. "sdkljsgkhsjdfhgsjkghksjbfskksjdfs"

    Returns: {"bfsk", "dfhgsjk", "dfs", "dkljs", "ghksj", "gkhsj", "ksj", "s" }

  148. "adcadca"

    Returns: {"a", "adc", "adc" }

  149. "abcdefghijklmnopqrstuwxyzbacdefghijklmnopqrstuwxyz"

    Returns: {"abcdefghijklmnopqrstuwxyz", "bacdefghijklmnopqrstuwxyz" }

  150. "abaacaaaaadefqzabaacaaaaaabaacaaaaaabaacaaaaadefqz"

    Returns: {"a", "a", "a", "a", "a", "a", "a", "a", "a", "a", "a", "a", "a", "a", "a", "a", "a", "a", "a", "a", "a", "a", "a", "ab", "ab", "ab", "ac", "ac", "ac", "ac", "adefqz", "defqzab" }

  151. "qwertyuiopasdfghjklzxqwertyuiopasdfghjklzxqwertyui"

    Returns: {"asdfghjklzxqwertyui", "asdfghjklzxqwertyuiop", "qwertyuiop" }

  152. "acdabaebad"

    Returns: {"a", "a", "cdab", "ebad" }

  153. "sidnsjupcxslgsunfofvxjxxejxzcklsczwnk"

    Returns: {"cxs", "czwnk", "dnsjup", "ejxzckls", "fvx", "jx", "lgsunfo", "si", "x" }

  154. "decd"

    Returns: {"cd", "de" }

  155. "ababcccv"

    Returns: {"ab", "abc", "c", "cv" }

  156. "abbbaaaabababbabcdhefbabbabaababbddbcbabcbabaababa"

    Returns: {"a", "a", "a", "ab", "ab", "ab", "ab", "ab", "ab", "ab", "ab", "ab", "ab", "ab", "b", "b", "b", "ba", "ba", "ba", "ba", "bd", "cba", "cdhefb", "dbc" }

  157. "abacabadabacabaeabacabadabacaba"

    Returns: {"a", "a", "a", "a", "a", "a", "a", "a", "ab", "bac", "bac", "bac", "bac", "bad", "bad", "bae" }

  158. "abacabadabacaba"

    Returns: {"a", "a", "a", "a", "ab", "bac", "bac", "bad" }

  159. "dhijklmnopqrstuwyzcbadcbd"

    Returns: {"ad", "cbd", "dhijklmnopqrstuwyzcb" }

  160. "abcbacb"

    Returns: {"ab", "acb", "cb" }

  161. "ababababa"

    Returns: {"a", "ab", "ab", "ab", "ab" }

  162. "bcabcd"

    Returns: {"abcd", "bc" }

  163. "bcadbe"

    Returns: {"adbe", "bc" }

  164. "eade"

    Returns: {"ade", "e" }

  165. "fadsjfnberbvsdkjvebrzggbsdvbskjvbkushbgwskjgsrbtjk"

    Returns: {"adsjfnb", "bgwskj", "bkush", "bskjv", "dkjvebrzg", "erbvs", "f", "gbsdv", "gsrbtjk" }

  166. "abcabcabcadabcad"

    Returns: {"a", "a", "abc", "abc", "bcad", "bcad" }

  167. "qqewwrqrtwtwrerewqtrytrewtrrweqrq"

    Returns: {"er", "ewqtr", "ewtr", "q", "qew", "qrtw", "rq", "rweq", "twr", "wr", "ytr" }

  168. "jwweajlaaaaaabbbbxlkjfiojjlajaiooerwohjpppweojfab"

    Returns: {"a", "a", "a", "a", "a", "ab", "b", "b", "bxlkj", "erwohjp", "fioj", "jaio", "jla", "jw", "o", "p", "pweojfab", "weajl" }

  169. "zaxybnpzcrqzhjakzmamatimrysnapidhhopetogetfif"

    Returns: {"axybnpz", "crqzhja", "f", "hopet", "kzma", "mati", "mrysnapidh", "ogetfi", "z" }

  170. "zaaaabbbbccccssssddddabcdefghijklmnopqrs"

    Returns: {"a", "a", "ab", "abcdefghijklmnopqrs", "b", "b", "bc", "c", "c", "cs", "d", "d", "d", "s", "s", "sd", "za" }

  171. "abzcaczbcabcabczabcbazzzbaczbaczbaabacbacaabbccaab"

    Returns: {"a", "a", "ab", "ab", "abzc", "aczb", "bac", "bac", "bc", "ca", "cab", "cab", "cbaz", "czab", "czba", "czba", "z", "zba" }

  172. "aaaabcadabaadaasjdfgasjjag"

    Returns: {"a", "a", "a", "a", "a", "a", "ab", "ad", "asj", "asjdfg", "bcad", "jag" }

  173. "sdhfkjsdhkhvnbdflhfdjkslhgasdkjfqwioerykaaadaa"

    Returns: {"a", "a", "a", "ad", "eryka", "fkjsdh", "hfdjks", "khvnbdfl", "lhgasdkjfqwio", "sdh" }

  174. "abdfgethhhikjhhhasdrrrddroioujkhhhgtttreeddd"

    Returns: {"abdfgeth", "d", "d", "dro", "ed", "h", "h", "h", "h", "hasdr", "hgt", "hikj", "ioujkh", "r", "rd", "t", "tre" }

  175. "baaabb"

    Returns: {"a", "ab", "b", "ba" }

  176. "alfabetagammaomegatauleninjilleninjivleninbudetjit"

    Returns: {"a", "a", "auleni", "en", "gam", "inbudet", "jit", "leni", "lfabet", "ma", "njil", "njivl", "omegat" }

  177. "bababab"

    Returns: {"ab", "ab", "ab", "b" }

  178. "abcdbdefadecdg"

    Returns: {"abcd", "ad", "bdef", "ecdg" }


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: