Statistics

Problem Statement for "SoftwareCompanies"

Problem Statement

There are several companies on the market, with each company processing some data in order to produce data in a new company-specific format. When a company gets a unit of input data, it produces a unit of new data. Unfortunately, each company can process only some limited amount of data, and each company can accept only some specific data formats. Of course, running each company costs the owner some money.

The information about the companies will be given to you in a String[] names, a String[] process, a int[] cost and a int[] amount. names[i] is the name of the i-th company. process[i] is a single-space delimited list of companies which can process the data produced by the i-th company. cost[i] is the cost of running the i-th company, and amount[i] is the maximal amount of data that the i-th company can process.

Also you will be given two companies - company1 and company2. The company company1 has an infinite amount of unprocessed data in its supply which can be processed. Your goal is to convert as much data as possible to the new format of company2, spending the least amount of money as possible. You are to select the companies you want to run, since only running companies can process the data. Return the names of those companies as a String[], sorted in lexicographical order. If more than one answer is possible, return the lexicographically smallest one. If there is no way company2 can process any data at all, return an empty String[].

Definition

Class:
SoftwareCompanies
Method:
produceData
Parameters:
String[], String[], int[], int[], String, String
Returns:
String[]
Method signature:
String[] produceData(String[] names, String[] process, int[] cost, int[] amount, String company1, String company2)
(be sure your method is public)

Notes

  • String A is lexicographically smaller than string B if it contains a smaller letter at the first position they differ or if A is a prefix of B. List A is lexicographically smaller than list B if it contains a lexicographically smaller string at the first position they differ or if it is a prefix of list B.

Constraints

  • names will contain between 2 and 12 elements, inclusive.
  • Each element of names will contain between 1 and 50 lowercase letters ('a'-'z'), inclusive.
  • All elements of names will be distinct.
  • amount, cost, process and names will all contain same number of elements.
  • Each element of process will contain between 0 and 50 characters, inclusive.
  • Each element of process will contain a single-space separated names of companies without any leading or trailing spaces.
  • Each element of process will contain no duplicate names.
  • Each element of process will list only companies presented in names.
  • Element i of process will not contain the i-th company in names.
  • Each element of cost will be between 0 and 1000000, inclusive.
  • Each element of amount will be between 1 and 1000000, inclusive.
  • company1 and company2 will both be present in names.
  • company1 and company2 will be distinct.

Examples

  1. {"topcoder", "doodle", "nasa", "ninny", "idm", "noname", "kintel"}

    {"doodle nasa noname", "idm ninny noname", "idm ninny noname", "kintel", "kintel", "", ""}

    {1, 2, 7, 4, 6, 1, 2}

    {50, 10, 11, 9, 14, 11, 23}

    "topcoder"

    "kintel"

    Returns: {"doodle", "idm", "kintel", "nasa", "ninny", "topcoder" }

    topcoder has an unlimited amount of data. We take 21 units of topcoder data, with 10 units going to doodle and 11 to nasa. When doodle processes all 10 units, all 10 units of the output go to idm, and, after being processed by idm, those 10 units continue to kintel. 11 units of data processed by nasa are split between ninny (9 units) and idm (2 units). Both those companies give their output to kintel, which has enough power to process all 21 units of data it gets. Therefore the optimal strategy is to run all the companies except "noname".

  2. {"topcoder", "google", "nasa", "lilly", "ibm", "intel"}

    {"google nasa", "ibm lilly", "ibm lilly", "intel", "intel", ""}

    {1, 2, 7, 4, 6, 2}

    {50, 10, 11, 9, 12, 23}

    "topcoder"

    "intel"

    Returns: {"google", "ibm", "intel", "lilly", "nasa", "topcoder" }

  3. {"topcoder", "google", "zasa", "zilly", "ibm", "intel"}

    {"google zasa", "ibm zilly", "ibm zilly", "intel", "intel", ""}

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

    {50, 10, 11, 9, 12, 23}

    "topcoder"

    "intel"

    Returns: {"google", "ibm", "intel", "topcoder", "zasa", "zilly" }

  4. {"topcoder", "google", "zasa", "zilly", "ibm", "intel"}

    {"google zasa", "ibm zilly", "ibm zilly", "intel", "intel", ""}

    {1, 2, 7, 4, 6, 2}

    {50, 10, 11, 9, 12, 23}

    "topcoder"

    "intel"

    Returns: {"google", "ibm", "intel", "topcoder", "zasa", "zilly" }

  5. {"a", "b", "c", "d"}

    {"", "c", "d", ""}

    {0, 2, 7, 41}

    {5, 5, 7, 6}

    "b"

    "d"

    Returns: {"a", "b", "c", "d" }

  6. {"a", "b", "c", "d"}

    {"", "c", "d", ""}

    {1, 2, 7, 41}

    {5, 5, 7, 6}

    "b"

    "d"

    Returns: {"b", "c", "d" }

  7. {"om", "ptd", "hnde", "pty", "a", "qqp", "put", "ywu", "gj", "xcwl", "rf", "s"}

    {"ptd qqp put rf s", "om pty a qqp put gj xcwl rf s", "om ptd ywu gj rf s", "om ptd hnde a qqp put ywu gj xcwl s", "hnde pty ywu gj xcwl rf s", "om ptd hnde a put ywu gj s", "om a qqp xcwl s", "om pty a qqp put gj xcwl s", "om ptd hnde a qqp put xcwl rf s", "a put ywu gj rf s", "om pty a qqp put", "ptd pty a qqp put ywu gj rf"}

    {91, 13, 82, 50, 50, 94, 53, 56, 61, 37, 61, 33}

    {66, 60, 34, 96, 26, 75, 54, 82, 61, 92, 34, 45}

    "put"

    "om"

    Returns: {"om", "put" }

  8. {"mwp", "px", "y", "xrak", "xevy", "f", "h", "dl", "kb", "o", "qplw", "caq"}

    {"y f h dl kb o caq", "xevy f dl kb qplw caq", "mwp px xrak xevy f dl kb o qplw caq", "mwp y f h dl kb o qplw caq", "mwp px y f h kb o caq", "mwp px y xrak xevy o", "y xrak xevy qplw caq", "y f kb o qplw", "mwp y xrak xevy f dl qplw caq", "mwp y xrak xevy f kb qplw caq", "px y xrak xevy f h o caq", "mwp px xrak f h dl qplw"}

    {21, 92, 99, 40, 0, 81, 67, 18, 12, 91, 64, 80}

    {95, 4, 53, 79, 69, 67, 50, 40, 34, 21, 2, 86}

    "dl"

    "kb"

    Returns: {"dl", "kb" }

  9. {"eq", "joj", "ct", "cg", "qly", "i", "hgg", "ii", "k", "y", "sipq", "ug"}

    {"qly hgg k y sipq ug", "eq ct i hgg ii y ug", "joj cg qly i hgg ii y ug", "eq joj ct i hgg ii sipq", "eq joj ii k y sipq ug", "joj ct cg qly k y ug", "eq joj ct ii sipq ug", "eq qly k ug", "eq ct cg i hgg y sipq ug", "eq joj cg i hgg ii sipq ug", "eq joj ct qly i ii y ug", "ct cg i k sipq"}

    {97, 60, 55, 8, 95, 54, 30, 22, 33, 79, 20, 90}

    {10, 13, 56, 82, 28, 71, 50, 66, 18, 60, 7, 62}

    "i"

    "ii"

    Returns: {"cg", "i", "ii" }

  10. {"e", "zzkk", "fz", "sn", "kx", "ca", "nr", "zkx", "p", "kufm", "ihiw", "mekj"}

    {"zzkk fz sn kx ca zkx p kufm mekj", "e fz kx ca nr zkx p ihiw", "e zzkk sn kx p ihiw mekj", "fz kx nr zkx p kufm mekj", "fz sn ca nr zkx mekj", "e zzkk kx nr kufm ihiw mekj", "sn kx zkx p kufm mekj", "zzkk fz sn kx ca nr kufm ihiw mekj", "e zzkk sn kx zkx", "zzkk sn ca nr zkx p ihiw mekj", "e zzkk fz sn kx ca nr zkx p kufm", "e fz sn kx ca nr p ihiw"}

    {48, 18, 50, 52, 49, 12, 29, 13, 89, 10, 49, 85}

    {60, 69, 7, 14, 66, 27, 85, 1, 76, 71, 25, 96}

    "e"

    "kufm"

    Returns: {"e", "kufm" }

  11. {"bwnw", "rv", "vslc", "ob", "cdd", "joel", "s", "q", "npk", "d", "mfnj", "op"}

    {"rv vslc ob cdd joel d mfnj op", "bwnw vslc ob cdd joel s q npk d mfnj op", "rv ob cdd joel q npk d mfnj op", "rv vslc cdd joel s q mfnj op", "bwnw rv vslc ob joel s q npk d mfnj op", "bwnw vslc ob cdd s mfnj", "vslc ob cdd q npk mfnj op", "bwnw rv vslc ob cdd s npk d mfnj op", "bwnw rv vslc ob cdd s q d op", "bwnw rv vslc ob joel s npk mfnj op", "vslc ob cdd joel s q npk op", "rv vslc joel s q npk d mfnj"}

    {0, 87, 91, 29, 22, 1, 56, 74, 93, 32, 44, 4}

    {49, 47, 78, 44, 59, 72, 40, 5, 17, 91, 94, 28}

    "op"

    "cdd"

    Returns: {"bwnw", "cdd", "joel", "op" }

  12. {"itfr", "tztk", "kk", "o", "os", "iym", "gbfi", "aul", "jrd", "djxr", "mch", "opa"}

    {"tztk o os iym gbfi aul djxr mch", "o iym gbfi jrd djxr mch opa", "itfr o iym jrd djxr opa", "itfr tztk kk os gbfi aul jrd djxr mch opa", "itfr tztk kk iym gbfi aul jrd djxr opa", "itfr tztk kk o gbfi aul jrd djxr mch opa", "itfr o os iym aul jrd djxr mch opa", "itfr tztk kk o os iym gbfi jrd djxr mch", "itfr tztk kk o os iym gbfi djxr mch opa", "o os gbfi mch opa", "itfr kk o gbfi aul jrd djxr", "itfr tztk kk o os iym gbfi jrd djxr mch"}

    {31, 2, 55, 42, 85, 4, 25, 28, 58, 12, 61, 26}

    {15, 93, 7, 94, 32, 44, 53, 66, 87, 45, 12, 60}

    "kk"

    "tztk"

    Returns: {"iym", "kk", "tztk" }

  13. {"o", "isdw", "w", "zejj", "x", "pax", "z", "vrpf", "kyd", "rg", "knz", "onja"}

    {"isdw zejj x pax z kyd rg knz onja", "o w zejj x pax z vrpf kyd rg knz onja", "o isdw zejj x z vrpf kyd knz onja", "o isdw w x pax z vrpf onja", "o isdw w zejj pax z vrpf kyd rg onja", "o w zejj x z vrpf kyd rg onja", "o isdw zejj x pax vrpf kyd rg knz onja", "o isdw zejj kyd rg knz onja", "o w zejj x pax z knz onja", "o isdw w pax vrpf knz onja", "isdw w pax z vrpf kyd onja", "o isdw w zejj x pax z vrpf kyd rg knz"}

    {96, 52, 0, 53, 45, 35, 18, 3, 29, 48, 29, 43}

    {13, 75, 94, 70, 7, 27, 33, 10, 25, 2, 95, 13}

    "o"

    "rg"

    Returns: {"o", "rg" }

  14. {"lmbc", "iz", "k", "q", "dnzb", "h", "zm", "n", "brku", "ph", "rv", "xqaz"}

    {"k q dnzb h zm n brku ph rv xqaz", "q dnzb zm brku ph rv xqaz", "lmbc q dnzb h zm n brku ph rv xqaz", "lmbc iz k dnzb h zm n brku ph rv xqaz", "lmbc iz q zm n brku ph rv", "iz n brku rv xqaz", "lmbc iz k q dnzb n brku rv xqaz", "lmbc iz k q dnzb brku ph rv xqaz", "lmbc iz k q dnzb rv xqaz", "iz k q dnzb h zm n rv xqaz", "lmbc iz q dnzb h zm n brku xqaz", "lmbc iz k q dnzb h zm n brku ph rv"}

    {49, 37, 41, 38, 72, 72, 4, 76, 39, 88, 80, 40}

    {34, 82, 17, 58, 37, 53, 72, 88, 35, 61, 12, 35}

    "h"

    "q"

    Returns: {"h", "iz", "q" }

  15. {"pgz", "gk", "xz", "zux", "pmw", "a", "jztl", "nz", "y", "rye", "sfip", "bsqr"}

    {"gk xz zux pmw a jztl nz rye sfip", "pgz pmw a jztl nz rye bsqr", "pgz gk zux pmw a jztl nz y rye", "xz pmw a jztl y rye sfip", "gk xz zux jztl rye sfip", "pgz gk xz zux jztl nz y rye bsqr", "pgz gk xz zux pmw nz rye sfip bsqr", "pgz gk xz pmw a jztl rye sfip", "pgz gk xz zux pmw a jztl rye sfip bsqr", "pgz gk xz zux pmw a jztl y sfip", "pgz gk xz zux pmw nz y rye bsqr", "pgz gk xz zux pmw a jztl nz y sfip"}

    {26, 94, 54, 88, 27, 74, 98, 13, 78, 22, 71, 32}

    {44, 9, 41, 2, 87, 49, 15, 99, 9, 90, 66, 59}

    "pgz"

    "rye"

    Returns: {"pgz", "rye" }

  16. {"b", "bz", "ba", "d", "z", "ca", "y", "a", "x"}

    {"bz ba z ca", "ba", "d", "", "ca", "d", "a", "x", ""}

    {5, 5, 5, 10, 6, 6, 3, 0, 3}

    {10, 7, 10, 9, 6, 9, 23, 13, 11}

    "b"

    "d"

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

  17. {"b", "bz", "ba", "d", "z", "ca", "y", "a", "x"}

    {"bz ba z ca", "ba", "d", "", "ca", "d", "a", "x", ""}

    {5, 5, 5, 10, 6, 6, 3, 1, 3}

    {10, 7, 10, 9, 6, 9, 23, 13, 11}

    "b"

    "d"

    Returns: {"b", "ba", "d" }

  18. {"x", "y", "z", "t", "u", "w", "s", "r", "q", "p", "o", "k"}

    {"y", "z", "t", "u", "w", "s", "r", "q", "p", "o", "k", ""}

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

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

    "x"

    "k"

    Returns: {"k", "o", "p", "q", "r", "s", "t", "u", "w", "x", "y", "z" }

  19. {"a", "b", "c", "d", "e", "f", "g", "h", "i" ,"j", "k", "l"}

    {"b c", "d e f g", "d e f g", "h i j", "h i j", "h i j", "h i j", "k l", "k l", "k l", "", ""}

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

    {1000000, 500000, 500000, 250000, 250000, 250000, 250000, 300000, 300000, 400000, 1000000, 1000000}

    "a"

    "l"

    Returns: {"a", "b", "c", "d", "e", "f", "g", "h", "i", "j", "l" }

  20. {"a", "b", "c", "d", "e", "f" ,"g" ,"h", "i", "j", "k", "l"}

    {"b c d e f g h i j k l", "a c d e f g h i j k l", "a b d e f g h i j k l", "a b c e f g h i j k l", "a b c d f g h i j k l", "a b c d e g h i j k l", "a b c d e f h i j k l", "a b c d e f g i j k l", "a b c d e f g h j k l", "a b c d e f g h i k l", "a b c d e f g h i j l", "a b c d e f g h i j k"}

    {101, 201, 301, 401, 501, 601, 701, 801, 901, 1001, 1101, 1201}

    {90, 23, 35, 123, 7, 67, 23, 675, 23, 45, 230, 560}

    "a"

    "k"

    Returns: {"a", "k" }

  21. {"a", "b", "c", "d", "e", "f" ,"g" ,"h", "i", "j", "k", "l"}

    {"b c d e f g h i j l", "a c d e f g h i j k l", "a b d e f g h i j k l", "a b c e f g h i j k l", "a b c d f g h i j k l", "a b c d e g h i j k l", "a b c d e f h i j k l", "a b c d e f g i j k l", "a b c d e f g h j k l", "a b c d e f g h i k l", "a b c d e f g h i j l", "a b c d e f g h i j k"}

    {101, 201, 301, 4401, 501, 601, 701, 8801, 901, 1001, 1101, 9201}

    {90, 23, 35, 123, 7, 67, 23, 675, 23, 45, 230, 560}

    "a"

    "k"

    Returns: {"a", "b", "f", "k" }

  22. {"a", "b", "c", "d", "e", "f", "end", "teg", "uu", "cc", "tc"}

    {"f b", "c e cc", "d end", "", "d b", "e", "d", "end", "tc f", "tc teg", "uu a"}

    {100, 20, 1000, 15, 16, 12, 54, 45, 33, 22, 18}

    {82, 23, 43, 86, 91, 10, 95, 23, 54, 65, 45}

    "uu"

    "end"

    Returns: {"a", "b", "cc", "end", "tc", "teg", "uu" }

  23. {"aa", "ab", "ac", "ad", "ae", "a", "af", "ag", "ah"}

    {"ad", "ag", "ab ad", "ae ag ah", "ah af", "ad ac", "", "ah", "af"}

    {345, 234, 567, 234, 567, 24, 546, 234, 456}

    {35, 16, 15, 26, 18, 40, 40, 12, 20}

    "a"

    "af"

    Returns: {"a", "ab", "ac", "ad", "ae", "af", "ag", "ah" }

  24. {"a", "b", "c", "d", "e", "f" ,"g" ,"h", "i", "j", "k", "l"}

    {"b c d e f g h i j k l", "a c d e f g h i j k l", "a b d e f g h i j k l", "a b c e f g h i j k l", "a b c d f g h i j k l", "a b c d e g h i j k l", "a b c d e f h i j k l", "a b c d e f g i j k l", "a b c d e f g h j k l", "a b c d e f g h i k l", "a b c d e f g h i j l", "a b c d e f g h i j k"}

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

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

    "a"

    "k"

    Returns: {"a", "k" }

  25. {"coma", "comb", "comc", "comd"}

    {"comb", "coma", "comd", "comc"}

    {10, 54, 18, 93}

    {10, 10, 10, 10}

    "comb"

    "comc"

    Returns: { }

  26. {"a", "b", "c", "d", "e", "f", "g", "h", "i", "j", "k", "l"}

    {"b", "c e", "d", "c f", "d f", "g", "f", "e g", "", "k l", "i", ""}

    {5, 2, 3, 1, 6, 12, 76, 2, 8, 2, 9, 1}

    {10, 6, 2, 8, 10, 4, 9, 8, 2, 32, 41, 19}

    "a"

    "g"

    Returns: {"a", "b", "e", "f", "g" }

  27. {"si", "na", "l", "co", "i", "pi", "v", "mo", "g", "mr", "t", "zjb"}

    {"na", "si l", "na i", "i pi", "l co", "v", "pi mo zjb", "v zjb", "mo mr", "g", "mr zjb", "t mo v"}

    {10, 25, 3, 14, 65, 18, 7, 9, 11, 17, 1, 2}

    {15, 11, 10, 3, 7, 18, 7, 9, 12, 8, 11, 5}\

    "na"

    "zjb"

    Returns: {"co", "i", "l", "na", "pi", "v", "zjb" }

  28. {"rfc", "cab", "opos", "krf", "cfi", "zuks", "viki", "ieeie", "kvik", "orki", "galeb"}

    {"cfi krf", "rfc krf opos", "krf cab zuks cfi", "rfc cfi opos", "", "galeb", "orki ieeie", "kvik", "krf opos cfi orki", "galeb", "orki"}

    {1, 2, 5, 7, 10, 4, 8, 16, 101, 7, 6}

    {14, 5, 9, 3, 98, 15, 101, 7, 53, 12, 17}

    "opos"

    "viki"

    Returns: { }

  29. {"dun", "pex", "sin", "te", "rex", "lon", "ve", "per", "sun", "tor", "smor"}

    {"pex smor", "rex tor", "rex te", "ve pex", "tor", "smor per ve", "lon sun", "sun lon", "ve", "smor sun", "lon"}

    {3, 5, 9, 12, 14, 71, 58, 91, 2, 103, 66}

    {23, 78, 45, 12, 56, 8, 1, 25, 28, 58, 50}

    "dun"

    "per"

    Returns: {"dun", "lon", "per", "smor" }

  30. {"mi", "liv", "bcc", "gl", "paj", "up", "gav", "ctt", "prst", "j", "jokiii", "prd"}

    {"liv", "gav", "mi liv paj gl up", "mi", "gav liv", "bcc", "", "paj", "gav jokiii", "prst", "j", ""}

    {12, 5, 69, 4, 14, 25, 11, 20, 36, 8, 17, 125}

    {4, 25, 58, 41, 10, 26, 6, 7, 89, 12, 14, 256}

    "bcc"

    "j"

    Returns: { }

  31. {"aaa", "bbb", "ccc", "ddd", "eee", "fff", "ggg", "hhh", "iii", "jjj", "kkk"}

    {"bbb ccc iii", "eee fff", "ddd", "bbb fff", "fff", "ccc", "", "fff ddd", "ggg jjj", "fff", "jjj hhh eee"}

    {9, 10, 15, 4, 5, 80, 1, 33, 27, 19, 20}

    {10, 12, 14, 9, 8, 7, 1, 2, 5, 3, 3}

    "eee"

    "bbb"

    Returns: {"bbb", "ccc", "ddd", "eee", "fff" }

  32. {"abc", "acb", "bac", "bca", "cab", "cba", "dea", "dae", "aed", "ade", "ead"}

    {"acb", "bac", "bca", "cab", "cba", "dea", "dae", "aed", "ade", "ead", ""}

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

    {1000000, 100000, 100000, 100000, 10000, 10000, 10000, 10000, 1000, 1000, 1000}

    "abc"

    "ead"

    Returns: {"abc", "acb", "ade", "aed", "bac", "bca", "cab", "cba", "dae", "dea", "ead" }

  33. {"zvrk", "pr", "eg", "dog", "moj", "sis", "mis", "tis", "kris", "krispi", "muki", "to"}

    {"moj mis to", "sis tis krispi", "mis pr sis dog", "tis kris zvrk", "sis krispi pr", "muki zvrk", "pr muki", "", "dog to muki", "moj muki", "pr", "tis mis"}

    {10, 2, 7, 8, 19, 12, 14, 16, 18, 20, 6, 13}

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

    "dog"

    "krispi"

    Returns: {"dog", "kris", "krispi", "muki", "pr" }

  34. {"c", "b", "a"}

    {"b", "c", ""}

    {1, 1, 0}

    {1, 1, 22}

    "c"

    "b"

    Returns: {"a", "b", "c" }

  35. {"mrjs", "swdo", "rzze", "t", "s", "pv", "u", "at", "xu", "fzq", "vfpm", "pc"}

    {"swdo t s at xu fzq pc", "mrjs rzze t s pv at fzq vfpm pc", "mrjs swdo t s pv fzq vfpm pc", "mrjs swdo s pv u at xu fzq vfpm pc", "mrjs rzze t u at fzq vfpm pc", "mrjs swdo rzze t u at xu fzq", "mrjs swdo rzze t s pv at fzq vfpm", "mrjs swdo rzze s pv fzq pc", "mrjs swdo rzze s pv u at fzq vfpm", "mrjs rzze t pv u at xu vfpm pc", "mrjs swdo rzze t s pv at fzq pc", "mrjs rzze t s u fzq vfpm"}

    {86, 44, 72, 74, 26, 28, 22, 85, 46, 10, 71, 45}

    {72, 48, 58, 47, 67, 49, 27, 14, 13, 95, 13, 51}

    "pc"

    "s"

    Returns: {"pc", "s" }

  36. {"lv", "jq", "mki", "srwk", "x", "zpp", "ut", "s", "wwtw", "fgx", "zpr", "ie"}

    {"jq mki srwk x zpp ut wwtw fgx zpr ie", "mki x zpp s wwtw fgx zpr", "lv jq srwk x zpp s wwtw fgx", "x ut s wwtw fgx zpr ie", "lv jq mki srwk zpp ut s wwtw fgx", "lv jq srwk x ut s fgx", "lv jq mki srwk x zpp wwtw ie", "lv jq mki srwk x zpp ut fgx", "lv jq mki srwk x zpp ut s fgx zpr ie", "jq x zpp ut s wwtw ie", "lv jq mki srwk x zpp ut s wwtw ie", "jq mki srwk x zpp wwtw fgx zpr"}

    {71, 81, 92, 63, 49, 19, 66, 49, 66, 85, 53, 8}

    {49, 99, 67, 84, 70, 5, 4, 6, 9, 73, 67, 21}

    "lv"

    "srwk"

    Returns: {"lv", "srwk" }

  37. {"vc", "zjhm", "vf", "l", "km", "x", "kh", "a", "ahg", "p", "xfdi", "j"}

    {"vf l x kh a ahg p xfdi j", "vc l km x kh a p xfdi j", "l x kh a ahg p xfdi j", "vc zjhm vf km x kh a ahg p j", "vc zjhm vf l x kh a p xfdi j", "vc zjhm vf l km kh a ahg j", "vc zjhm l km x a ahg p xfdi j", "vf l x kh p xfdi j", "vc zjhm vf l km x a p", "zjhm vf l x kh xfdi j", "vc zjhm vf l km x a ahg p", "zjhm vf l km x kh ahg p xfdi"}

    {45, 47, 76, 77, 65, 85, 95, 82, 24, 83, 50, 68}

    {47, 84, 16, 68, 81, 67, 12, 12, 79, 71, 11, 77}

    "a"

    "j"

    Returns: {"a", "j" }

  38. {"udm", "wjg", "rnew", "c", "n", "j", "rbi", "z", "yb", "gw", "kr", "wmww"}

    {"wjg rnew c n j z gw kr", "udm rnew c n j rbi z yb gw kr wmww", "udm wjg c n rbi yb wmww", "udm wjg rnew n j z yb gw kr", "udm wjg rnew c j rbi z yb gw kr wmww", "udm wjg rnew c n rbi z yb gw kr wmww", "udm wjg rnew c n j yb gw kr wmww", "wjg rnew n j rbi yb gw kr wmww", "udm wjg rnew c j rbi z gw kr wmww", "udm wjg rnew n rbi z yb wmww", "udm wjg rnew c n j rbi z yb gw wmww", "udm wjg rnew c j rbi z yb gw kr"}

    {35, 73, 50, 9, 27, 3, 92, 21, 91, 98, 52, 15}

    {58, 3, 9, 8, 12, 77, 24, 66, 64, 37, 33, 8}

    "rnew"

    "udm"

    Returns: {"rnew", "udm" }

  39. {"nj", "bm", "oz", "qd", "y", "t", "oqt", "c", "e", "bd", "fqy", "di"}

    {"bm oz qd y t oqt e bd fqy di", "nj oz y t oqt c e bd fqy di", "nj bm qd y t oqt c e fqy di", "nj bm oz y t oqt c e bd fqy", "nj bm oz qd oqt c bd di", "nj bm oz qd y oqt e bd fqy", "nj bm oz qd y t c e bd fqy di", "nj bm qd y oqt e bd fqy di", "bm qd y oqt c bd fqy di", "nj bm oz qd y t oqt c e fqy di", "qd y t oqt c bd di", "nj oz qd y t c e bd fqy"}

    {31, 72, 19, 50, 2, 64, 20, 85, 77, 42, 0, 94}

    {56, 89, 54, 17, 64, 47, 50, 50, 75, 57, 34, 4}

    "di"

    "y"

    Returns: {"di", "fqy", "y" }

  40. {"edqe", "dfo", "xe", "ezm", "kis", "nue", "jsow", "ymer", "ser", "mx", "k", "ns"}

    {"dfo xe ezm nue jsow ymer ser k ns", "edqe xe ezm kis nue jsow ymer mx k ns", "edqe dfo ezm nue ymer", "edqe dfo xe kis nue jsow ymer ser mx ns", "edqe dfo xe ezm nue jsow ser k ns", "edqe xe ezm kis jsow ymer ser mx ns", "edqe dfo xe ezm kis nue ymer ser mx ns", "edqe dfo ezm kis jsow mx k ns", "edqe dfo ezm kis nue mx k ns", "edqe dfo xe kis nue ymer ser k ns", "edqe xe ezm kis nue jsow ymer ser mx ns", "xe ezm kis jsow ymer ser k"}

    {40, 75, 12, 30, 74, 60, 33, 55, 96, 47, 90, 20}

    {90, 69, 14, 42, 11, 32, 44, 58, 1, 43, 36, 20}

    "kis"

    "dfo"

    Returns: {"dfo", "kis" }

  41. {"lfku", "iql", "ev", "ih", "uh", "o", "sc", "gqe", "es", "x", "f", "vnhx"}

    {"iql ev ih uh o sc es x f vnhx", "lfku ev ih uh o sc gqe x f vnhx", "lfku iql ih uh o sc gqe es x f vnhx", "ev uh o sc gqe es x f vnhx", "lfku iql ev ih o sc es x f vnhx", "lfku iql ev ih uh sc gqe es x", "lfku iql ev ih uh o gqe x f vnhx", "lfku iql ih uh o sc es x vnhx", "lfku ev ih uh o gqe x f", "lfku iql ev ih uh o sc gqe es vnhx", "lfku iql ev ih uh o sc gqe es vnhx", "lfku iql ev uh o sc gqe es x f"}

    {72, 7, 57, 59, 23, 81, 51, 90, 53, 59, 59, 98}

    {43, 78, 86, 30, 66, 82, 1, 34, 26, 83, 29, 17}

    "ev"

    "ih"

    Returns: {"ev", "ih" }

  42. {"bykl", "wv", "g", "a", "e", "o", "ycvw", "mkv", "z", "ca", "vyzl", "irih"}

    {"wv g e o ycvw mkv z ca vyzl irih", "bykl g a e o ycvw z ca vyzl irih", "bykl wv a e o ycvw mkv z ca vyzl irih", "bykl wv g e o ycvw mkv ca irih", "bykl wv g a o ycvw mkv z ca vyzl irih", "bykl wv g a e ycvw mkv z ca vyzl irih", "bykl wv g a e o mkv ca vyzl irih", "bykl wv g a e o ycvw z vyzl irih", "bykl wv a e o ycvw mkv ca vyzl irih", "wv g a e o mkv z vyzl irih", "bykl wv g a e o ycvw mkv ca irih", "bykl wv g e o ycvw mkv z ca"}

    {62, 53, 21, 41, 28, 32, 16, 66, 80, 94, 58, 65}

    {41, 99, 8, 45, 87, 34, 33, 26, 63, 34, 40, 46}

    "a"

    "vyzl"

    Returns: {"a", "e", "vyzl" }

  43. {"lio", "vdg", "uzyk", "rhp", "e", "q", "r", "pzjt", "qnkr", "xn", "y", "son"}

    {"vdg uzyk rhp e q r pzjt qnkr xn y son", "uzyk rhp e q pzjt qnkr xn y son", "lio vdg e q r pzjt qnkr xn y son", "lio vdg uzyk e q pzjt qnkr xn y son", "lio vdg uzyk rhp q r pzjt qnkr y son", "vdg uzyk rhp e r pzjt qnkr xn y son", "lio vdg uzyk rhp e q pzjt qnkr xn son", "lio vdg uzyk rhp e q r qnkr xn y son", "lio vdg e q r pzjt xn y son", "lio vdg rhp e q r pzjt qnkr y son", "vdg uzyk rhp e q r pzjt qnkr xn son", "lio vdg rhp q pzjt qnkr xn y"}

    {13, 41, 79, 97, 7, 94, 5, 38, 35, 82, 78, 65}

    {68, 65, 24, 51, 4, 45, 1, 79, 31, 12, 47, 59}

    "uzyk"

    "r"

    Returns: {"r", "uzyk" }

  44. {"s", "fv", "amb", "drz", "fwu", "ts", "lrt", "gpb", "wch", "h", "bjyn", "ai"}

    {"fv drz fwu ts gpb h bjyn", "s amb fwu ts lrt gpb wch h ai", "s fv drz fwu ts lrt gpb wch h bjyn ai", "s fv amb fwu ts lrt gpb wch h bjyn ai", "fv amb drz ts lrt gpb wch h ai", "s fv amb drz fwu lrt gpb wch h bjyn ai", "fv amb drz fwu ts gpb wch ai", "s fv drz fwu ts lrt wch bjyn ai", "s fv amb drz lrt gpb h bjyn ai", "s amb drz fwu ts lrt gpb wch bjyn ai", "fv amb drz fwu ts lrt wch h ai", "fv amb drz fwu ts lrt gpb wch bjyn"}

    {90, 37, 5, 47, 99, 55, 77, 63, 16, 3, 50, 89}

    {3, 35, 37, 41, 32, 66, 67, 21, 97, 75, 53, 53}

    "s"

    "bjyn"

    Returns: {"bjyn", "s" }

  45. {"jw", "p", "oi", "wpt", "yyje", "jody", "ifq", "bnd", "ij", "xlh", "lj", "yi"}

    {"p oi wpt jody ifq bnd xlh lj yi", "jw oi wpt yyje jody ifq bnd xlh lj yi", "p yyje jody ifq bnd lj yi", "jw p oi yyje jody bnd ij xlh lj yi", "jw p oi wpt jody bnd ij xlh lj yi", "jw p oi wpt yyje ifq ij xlh lj yi", "jw p oi wpt yyje jody bnd ij xlh", "jw wpt yyje jody xlh yi", "jw p oi wpt yyje jody bnd xlh lj", "jw p oi yyje jody bnd ij yi", "jw p oi wpt yyje jody ifq bnd ij xlh yi", "jw oi wpt yyje jody ifq ij xlh lj"}

    {74, 40, 6, 3, 51, 10, 16, 85, 43, 76, 4, 5}

    {27, 30, 87, 22, 1, 73, 56, 47, 90, 26, 99, 95}

    "bnd"

    "ij"

    Returns: {"bnd", "ij", "yi" }

  46. {"ju", "fo", "omil", "ud", "ndwi", "rmi", "m", "f", "ng", "tk", "oagd", "wxjk"}

    {"fo ud ndwi rmi m f ng tk oagd wxjk", "ju omil ud ndwi rmi m f ng oagd wxjk", "ju fo ud ndwi rmi m ng tk oagd wxjk", "ju fo ndwi rmi m ng tk oagd wxjk", "ju fo omil ud rmi m f ng tk oagd wxjk", "ju fo omil ud ng tk oagd wxjk", "ju fo omil ud ndwi f ng oagd wxjk", "ju fo omil ndwi rmi m ng tk oagd wxjk", "ju fo omil ud ndwi rmi m tk oagd wxjk", "fo omil ud ndwi m f ng oagd wxjk", "ju fo omil ud ndwi rmi m f ng tk wxjk", "ju fo omil ud ndwi rmi m f ng tk oagd"}

    {39, 91, 38, 9, 53, 76, 96, 24, 11, 36, 35, 35}

    {39, 2, 38, 64, 83, 97, 33, 28, 48, 44, 40, 75}

    "wxjk"

    "ndwi"

    Returns: {"ndwi", "wxjk" }

  47. {"aa", "ba", "ca", "da", "ea", "ga", "fa"}

    {"ba ca", "da ca", "ba ga", "ea", "fa", "fa ea", "ea ga"}

    {0, 0, 0, 0, 0, 0, 0}

    {18, 5, 3, 7, 8, 5, 17}

    "aa"

    "ea"

    Returns: {"aa", "ba", "ca", "da", "ea", "fa", "ga" }

  48. {"b", "bz", "ba", "d", "z", "ca", "y", "a", "x" }

    {"bz ba z ca", "ba", "d", "", "ca", "d", "a", "x", "" }

    {5, 5, 5, 10, 6, 6, 3, 1, 3 }

    {10, 7, 10, 9, 6, 9, 23, 13, 11 }

    "b"

    "d"

    Returns: {"b", "ba", "d" }

  49. {"a", "b", "c", "d", "e", "f", "g", "h" }

    {"b g", "c e", "d", "a", "f", "d", "h", "c" }

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

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

    "a"

    "d"

    Returns: {"a", "b", "c", "d" }

  50. {"a", "b", "l" }

    {"l b", "l", "" }

    {1000000, 1, 1000000 }

    {1000000, 1, 1000000 }

    "a"

    "l"

    Returns: {"a", "l" }

  51. {"topcoder", "doodle", "nasa", "ninny", "idm", "noname", "kintel" }

    {"doodle nasa noname", "idm ninny noname", "idm ninny noname", "kintel", "kintel", "", "" }

    {1, 2, 7, 4, 6, 1, 2 }

    {1, 10, 11, 9, 14, 11, 23 }

    "topcoder"

    "kintel"

    Returns: {"doodle", "kintel", "ninny", "topcoder" }

  52. {"a", "b" }

    {"b", "" }

    {20, 20 }

    {20, 20 }

    "a"

    "b"

    Returns: {"a", "b" }

  53. {"a", "b", "c", "d", "e", "f", "g" }

    {"b c", "d", "d", "e f", "g", "g", "a" }

    {1, 2, 4, 8, 16, 32, 64 }

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

    "a"

    "g"

    Returns: {"a", "b", "d", "e", "g" }

  54. {"b", "bz", "ba", "d", "z", "ca", "y", "a", "x" }

    {"bz ba z ca", "ba", "d", "", "ca", "d", "a", "x", "" }

    {5, 5, 5, 10, 6, 6, 3, 0, 3 }

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

    "b"

    "d"

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

  55. {"a", "bb", "c", "d", "e" }

    {"bb c d e", "a d", "", "e", "" }

    {100, 200, 300, 400, 500 }

    {10, 20, 30, 40, 50 }

    "bb"

    "e"

    Returns: {"bb", "d", "e" }

  56. {"a", "b", "c", "d" }

    {"c d", "a", "b", "b" }

    {1, 1, 1, 2 }

    {1, 2, 1, 2 }

    "a"

    "b"

    Returns: {"a", "b", "c" }

  57. {"a", "b", "c", "d", "e", "f", "g", "h", "i", "j", "k", "l" }

    {"b c", "d e f", "g h i j k", "l", "a c k", "k l", "a", "b", "d", "g", "i", "j" }

    {1000000, 654143, 15456, 2134, 1, 654, 7, 1000, 1, 1, 1, 1 }

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

    "a"

    "l"

    Returns: {"a", "c", "d", "i", "l" }

  58. {"a", "b", "c", "d" }

    {"b c", "d", "d", "" }

    {10, 5, 5, 10 }

    {20, 10, 10, 10 }

    "a"

    "d"

    Returns: {"a", "b", "d" }

  59. {"a", "b", "c", "d" }

    {"b c", "d", "d", "" }

    {1, 2, 3, 4 }

    {5, 5, 5, 10 }

    "a"

    "d"

    Returns: {"a", "b", "d" }


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: