Connection Status:
Competition Arena > Decipher
SRM 253 · 2005-07-23 · by legakis · Sorting, String Manipulation
Class Name: Decipher
Return Type: String[]
Method Name: decipher
Arg Types: (vector<string>, string)
Problem Statement

Problem Statement

A substitution cipher is a simple method of encoding text in which all occurrences of each letter are replaced by another. For example, consider the following substitution table:

    original: A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
    encoded:  P X M S A C Z E V G I J D K N F O R L H T U W B Y Q

The message "REGISTER NOW FOR THE TOPCODER OPEN" would be encoded as "RAZVLHAR KNW CNR HEA HNFMNSAR NFAK" by finding each letter in the top row and replacing it with the letter directly beneath.

Substitution ciphers are relatively easy to break. One method takes advantage of the fact that some letters are used more frequently than others. For example, in English text, the letter 'E' occurs more often than any other. It is reasonable to guess that the most common letter in the encoded text represents 'E'.

You will be given the encoded text as a String[] encoded. You will also be given a String frequencyOrder containing all the letters that occur in the unencoded text sorted in decreasing order by frequency. You are to attempt to decipher the encoded text by replacing the most frequent letter in encoded with frequencyOrder[0], the second-most frequent letter in encoded with frequencyOrder[1], and so on. If some letters occur equally frequently in encoded, replace the letter that occurs first alphabetically with the lower-index character in frequencyOrder.

Your method should return a String[] with exactly the same number of elements, and characters in each element, as encoded. Replace only letters, preserving spaces.

Constraints

  • encoded will contain between 1 and 50 elements, inclusive.
  • Each element of encoded will be between 0 and 50 characters long, inclusive.
  • Each element of encoded will contain only uppercase letters ('A'-'Z') and spaces.
  • encoded will contain at least one letter.
  • frequencyOrder will contain between 1 and 26 characters, inclusive.
  • frequencyOrder will contain only uppercase letters ('A'-'Z').
  • frequencyOrder will not have any duplicate letters.
  • encoded and frequencyOrder will contain the same number of distinct letters.
Examples
0)
{ "ABBBCC" }
"XYZ"
Returns: {"ZXXXYY" }

The most common letter in the encoded text is 'B', so it gets replaced by 'X'. The second-most common letter is 'C', so it gets replaced by 'Y'. Finally, the lone 'A' gets replaced by 'Z'.

1)
{ "RZLW" }
"CEFD"
Returns: {"EDCF" }

All letters occur equally frequently. So, the first letter alphabetically, 'L', gets replaced by the first letter in frequencyOrder, 'C'.

2)
{ "XX YYY Z YYY XX",
  "WWWWWZWWWWW" }
"ETMQ"
Returns: {"MM TTT Q TTT MM", "EEEEEQEEEEE" }
3)
{ "N" }
"M"
Returns: {"M" }
4)
{ " X ",
  "",
  " ",
  "  ",
  "   " }
"B"
Returns: {" B ", "", " ", "  ", "   " }
5)
{"AAAAABBBC"}
"BCA"
Returns: {"BBBBBCCCA" }

Breaks anyone who does a simple for (letter) replace() since there may be multiple replaces in a particular position.

6)
{"WELCOME TO GOLLY A GAME OF LIFE SIMULATOR BY TOMAS"," ROKICKI AND ANDREW TREVORROW NOTE THAT THIS IS AN"," ALPHA RELEASE FEATURES RUN BIGGER PATTERNS FASTER"," AND FURTHER THAN EVER BEFORE UNBOUNDED UNIVERSE E","VEN LARGER THAN ON A SIDE FAST MEMORYEFFICIENT CON","VENTIONAL ALGORITHM USE HASHING TO SEE LARGE PATTE","RNS EVOLVE AT HUGE TIME SCALES RESPONSIVE EVEN WHI","LE GENERATING OR GARBAGE COLLECTING READS RLE LIFE"," AND MACROCELL FORMATS PASTE IN PATTERNS FROM THE ","CLIPBOARD FAST LOADING OF LARGE PATTERNS UNBOUNDED"," ZOOMING OUT FOR ASTRONOMICAL PATTERNS AUTO FIT OP","TION KEEPS YOUR PATTERN SIZED TO THE WINDOW FULL S","CREEN OPTION NO MENUSTATUSTOOLSCROLL BARS BLACK ON"," WHITE OR WHITE ON BLACK HTMLBASED HELP SYSTEM FRE","E OPEN SOURCE AND CROSSPLATFORM LINUX WINDOWS MAC ","AND THIS IS JUST THE BEGINNING THE GOLLY APPLICATI","ON CAN BE INSTALLED ANYWHERE YOU LIKE BUT MAKE SUR","E YOU MOVE THE WHOLE FOLDER BECAUSE THE HELP SUBFO","LDER MUST BE KEPT WITH THE APPLICATION TO RUN GOLL","Y JUST CLICK ON THE APPLICATION ICON OR TYPE GOLLY"," ON THE COMMAND LINE  SEE THE HELP MENU FOR ALL TH","E DETAILS PLEASE VISIT THE GOLLY WEB SITE FOR THE ","LATEST INFORMATION HTTPGOLLYSOURCEFORGENET NOW GO ","FORTH AND GENERATE WELCOME TO GOLLY A GAME OF LIFE"," SIMULATOR BY TOMAS ROKICKI AND ANDREW TREVORROW N","OTE THAT THIS IS AN ALPHA RELEASE FEATURES RUN BIG","GER PATTERNS FASTER AND FURTHER THAN EVER BEFORE U","NBOUNDED UNIVERSE EVEN LARGER THAN ON A SIDE FAST ","MEMORYEFFICIENT CONVENTIONAL ALGORITHM USE HASHING"," TO SEE LARGE PATTERNS EVOLVE AT HUGE TIME SCALES ","RESPONSIVE EVEN WHILE GENERATING OR GARBAGE COLLEC","TING READS RLE LIFE AND MACROCELL FORMATS PASTE IN"," PATTERNS FROM THE CLIPBOARD FAST LOADING OF LARGE"," PATTERNS UNBOUNDED ZOOMING OUT FOR ASTRONOMICAL P","ATTERNS AUTO FIT OPTION KEEPS YOUR PATTERN SIZED T","O THE WINDOW FULL SCREEN OPTION NO MENUSTATUSTOOLS","CROLL BARS BLACK ON WHITE OR WHITE ON BLACK HTMLBA","SED HELP SYSTEM FREE OPEN SOURCE AND CROSSPLATFORM"," LINUX WINDOWS MAC AND THIS IS JUST THE BEGINNING ","O THE WINDOW FULL SCREEN OPTION NO MENUSTATUSTOOLS","CROLL BARS BLACK ON WHITE OR WHITE ON BLACK HTMLBA","SED HELP SYSTEM FREE OPEN SOURCE AND CROSSPLATFORM"," LINUX WINDOWS MAC AND THIS IS JUST THE BEGINNING ","O THE WINDOW FULL SCREEN OPTION NO MENUSTATUSTOOLS","CROLL BARS BLACK ON WHITE OR WHITE ON BLACK HTMLBA","SED HELP SYSTEM FREE OPEN SOURCE AND CROSSPLATFORM"," LINUX WINDOWS MAC AND THIS IS JUST THE BEGINNING ","THE GOLLY APPLICATION CAN BE INSTALLED ANYWHERE YO","U LIKE BUT MAKE SURE YOU MOVE THE WHOLE FOLDER BEC","AUSE THE HELP SUBFOLDER MUST BE KEPT WITH THE APPL"}
"ETAOINSRHLDCUMFPGWYBVKXJQ"
Returns: {"YESCAME TA GASSB I GIME AP SHPE NHMDSITAR WB TAMIN", " RAVHCVH IOF IOFREY TREKARRAY OATE TLIT TLHN HN IO", " ISULI RESEINE PEITDREN RDO WHGGER UITTERON PINTER", " IOF PDRTLER TLIO EKER WEPARE DOWADOFEF DOHKERNE E", "KEO SIRGER TLIO AO I NHFE PINT MEMARBEPPHCHEOT CAO", "KEOTHAOIS ISGARHTLM DNE LINLHOG TA NEE SIRGE UITTE", "RON EKASKE IT LDGE THME NCISEN RENUAONHKE EKEO YLH", "SE GEOERITHOG AR GIRWIGE CASSECTHOG REIFN RSE SHPE", " IOF MICRACESS PARMITN UINTE HO UITTERON PRAM TLE ", "CSHUWAIRF PINT SAIFHOG AP SIRGE UITTERON DOWADOFEF", " QAAMHOG ADT PAR INTRAOAMHCIS UITTERON IDTA PHT AU", "THAO VEEUN BADR UITTERO NHQEF TA TLE YHOFAY PDSS N", "CREEO AUTHAO OA MEODNTITDNTAASNCRASS WIRN WSICV AO", " YLHTE AR YLHTE AO WSICV LTMSWINEF LESU NBNTEM PRE", "E AUEO NADRCE IOF CRANNUSITPARM SHODJ YHOFAYN MIC ", "IOF TLHN HN XDNT TLE WEGHOOHOG TLE GASSB IUUSHCITH", "AO CIO WE HONTISSEF IOBYLERE BAD SHVE WDT MIVE NDR", "E BAD MAKE TLE YLASE PASFER WECIDNE TLE LESU NDWPA", "SFER MDNT WE VEUT YHTL TLE IUUSHCITHAO TA RDO GASS", "B XDNT CSHCV AO TLE IUUSHCITHAO HCAO AR TBUE GASSB", " AO TLE CAMMIOF SHOE  NEE TLE LESU MEOD PAR ISS TL", "E FETIHSN USEINE KHNHT TLE GASSB YEW NHTE PAR TLE ", "SITENT HOPARMITHAO LTTUGASSBNADRCEPARGEOET OAY GA ", "PARTL IOF GEOERITE YESCAME TA GASSB I GIME AP SHPE", " NHMDSITAR WB TAMIN RAVHCVH IOF IOFREY TREKARRAY O", "ATE TLIT TLHN HN IO ISULI RESEINE PEITDREN RDO WHG", "GER UITTERON PINTER IOF PDRTLER TLIO EKER WEPARE D", "OWADOFEF DOHKERNE EKEO SIRGER TLIO AO I NHFE PINT ", "MEMARBEPPHCHEOT CAOKEOTHAOIS ISGARHTLM DNE LINLHOG", " TA NEE SIRGE UITTERON EKASKE IT LDGE THME NCISEN ", "RENUAONHKE EKEO YLHSE GEOERITHOG AR GIRWIGE CASSEC", "THOG REIFN RSE SHPE IOF MICRACESS PARMITN UINTE HO", " UITTERON PRAM TLE CSHUWAIRF PINT SAIFHOG AP SIRGE", " UITTERON DOWADOFEF QAAMHOG ADT PAR INTRAOAMHCIS U", "ITTERON IDTA PHT AUTHAO VEEUN BADR UITTERO NHQEF T", "A TLE YHOFAY PDSS NCREEO AUTHAO OA MEODNTITDNTAASN", "CRASS WIRN WSICV AO YLHTE AR YLHTE AO WSICV LTMSWI", "NEF LESU NBNTEM PREE AUEO NADRCE IOF CRANNUSITPARM", " SHODJ YHOFAYN MIC IOF TLHN HN XDNT TLE WEGHOOHOG ", "A TLE YHOFAY PDSS NCREEO AUTHAO OA MEODNTITDNTAASN", "CRASS WIRN WSICV AO YLHTE AR YLHTE AO WSICV LTMSWI", "NEF LESU NBNTEM PREE AUEO NADRCE IOF CRANNUSITPARM", " SHODJ YHOFAYN MIC IOF TLHN HN XDNT TLE WEGHOOHOG ", "A TLE YHOFAY PDSS NCREEO AUTHAO OA MEODNTITDNTAASN", "CRASS WIRN WSICV AO YLHTE AR YLHTE AO WSICV LTMSWI", "NEF LESU NBNTEM PREE AUEO NADRCE IOF CRANNUSITPARM", " SHODJ YHOFAYN MIC IOF TLHN HN XDNT TLE WEGHOOHOG ", "TLE GASSB IUUSHCITHAO CIO WE HONTISSEF IOBYLERE BA", "D SHVE WDT MIVE NDRE BAD MAKE TLE YLASE PASFER WEC", "IDNE TLE LESU NDWPASFER MDNT WE VEUT YHTL TLE IUUS" }

Long text; real frequency

9)
{"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA","AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA","AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA","AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA","AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA","AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA","AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA","AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA","AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA","AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA","AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA","AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA","AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA","AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA","AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA","AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA","AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA","AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA","AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA","AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA","AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA","AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA","AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA","AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA","AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA","AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA","AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA","AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA","AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA","AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA","AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA","AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA","AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA","AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA","AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA","AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA","AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA","AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA","AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA","AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA","AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA","AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA","AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA","AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA","AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA","AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA","AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA","AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA","AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA","AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"}
"Z"
Returns: {"ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ", "ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ", "ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ", "ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ", "ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ", "ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ", "ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ", "ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ", "ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ", "ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ", "ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ", "ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ", "ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ", "ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ", "ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ", "ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ", "ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ", "ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ", "ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ", "ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ", "ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ", "ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ", "ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ", "ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ", "ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ", "ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ", "ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ", "ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ", "ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ", "ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ", "ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ", "ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ", "ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ", "ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ", "ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ", "ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ", "ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ", "ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ", "ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ", "ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ", "ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ", "ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ", "ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ", "ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ", "ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ", "ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ", "ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ", "ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ", "ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ", "ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ" }

One array element is too short.

Submissions are judged against all 48 archived test cases, of which 8 are shown here. Case numbers match the judge’s.

Coding Area

Language: C++17 · define a public class Decipher with a public method vector<string> decipher(vector<string> encoded, string frequencyOrder) · 48 test cases · 2 s / 256 MB per case

Submitting as anonymous