Problem Statement
Trees are common in computer science and in the business world: search trees, inheritance diagrams, organization charts, etc. Anytime we work with trees, we inevitably end up wanting to draw pictures of them. In this problem, you will write a method that draws textual pictures of trees. For example, here is a sample picture of the kind that you will draw:
ALICE | BOB-------CONROY | | DENISE-EDITH FRANCINE | GILBERT-HARRYNotice that every node has a label that is a sequence of one or more uppercase letters ('A'-'Z'). Sibling nodes are connected by dashes ('-'), and each parent node is connected to its children by a single vertical bar ('|'). Nodes are limited to at most two children. For example, in the above picture, "BOB" has two children but "CONROY" has only one child (all quotes for clarity only).
The layout of a picture is controlled by the following rules:
- A child node is always drawn two rows below its parent.
- Within a row, nodes are drawn from left to right in the same order that they appear in the input. (See below for the format of the input.)
- Sibling nodes are separated by one or more dashes ('-'). Adjacent non-sibling nodes in the same row are separated by one or more spaces (' ').
- The vertical bar ('|') connecting a parent to its children is drawn directly below the middle character of the parent's label and directly above the character midway between the first character of the first child's label and the last character of the last child's label. When the middle of the parent's label and/or the children's labels falls between characters, the vertical bar is aligned with the character immediately to the left of the true center.
- Sibling nodes are drawn as close together as possible without violating Rules 1-4. Placing siblings lower in the tree close together takes precedence over siblings higher in the tree (see Example 1).
A tree will be specified by a
<tree> = <label> "[" <treelist> "]" <treelist> = "" | <tree> | <tree> <tree> <label> = one or more uppercase lettersNote that spaces in the grammar are for clarity only, and do not appear in the input. In words, a tree is written as the label of its root followed by its subtrees in square brackets. For example, a one-node tree with the label "FRED" would be written "FRED[]" while a three-node tree with labels "ROOT", "LEFTCHILD", and "RIGHTCHILD" would be written "ROOT[LEFTCHILD[]RIGHTCHILD[]]". The tree drawn above would be written
"ALICE[BOB[DENISE[]EDITH[]]CONROY[FRANCINE[GILBERT[]HARRY[]]]]"In practice, the written form of a tree may be too long to fit comfortably in a single
{ "ALICE[BOB[DENISE[]EDITH[]]CONR", "OY[FRANCINE[GILBERT[]HARRY[]]]]" }Given the
Definition
- Class:
- TreeDrawing
- Method:
- draw
- Parameters:
- String[]
- Returns:
- String[]
- Method signature:
- String[] draw(String[] tree)
- (be sure your method is public)
Constraints
- tree contains between 1 and 3 elements, inclusive.
- Each element of tree contains between 1 and 50 characters, inclusive.
- Each element of tree contains only uppercase letters ('A'-'Z') and square brackets ('[' and ']').
- The concatenation of the elements of tree contains at least 3 characters.
- The concatenation of the elements of tree satisfies the grammar shown above.
Examples
{ "A[]" }
Returns: { "A" }
{ "A[B[]]" }
Returns: { "A", "|", "B" }
{ "A[B[C[]]]" }
Returns: { "A", "|", "B", "|", "C" }
{ "A[B[C[D[]]]]" }
Returns: { "A", "|", "B", "|", "C", "|", "D" }
{ "A[B[C[D[E[]]]]]" }
Returns: { "A", "|", "B", "|", "C", "|", "D", "|", "E" }
{ "ALICE[BOB[DENISE[]EDITH[]]CONR", "OY[FRANCINE[GILBERT[]HARRY[]]]]" }
Returns: { " ALICE ", " | ", " BOB-------CONROY ", " | | ", "DENISE-EDITH FRANCINE ", " | ", " GILBERT-HARRY" }
The example above.
{ "A[B[C[DDDDDDDDDDDDDDD[]]E[]]F[G[H[]]I[]]]" }
Returns: { " A ", " | ", " B--------F ", " | | ", " C-E G-I", " | | ", "DDDDDDDDDDDDDDD H " }
Notice that by moving C and E farther apart, we could draw B and F closer together, as in A | B------F <<< B and F are now separated by 6 dashes instead of 8 | | C-----E G-I <<< C and E are now separated by 5 dashes instead of 1 | | DDDDDDDDDDDDDDD H However, priority is given to the lower siblings, so we keep C and E close together.
{ "A[BBBBB[]C[D[FFFFFFFFF[]]E[]]]" }
Returns: { " A ", " | ", "BBBBB-C ", " | ", " D-E ", " | ", " FFFFFFFFF" }
Notice that by drawing D and E farther apart, we could make the overall picture narrower, as in A | BBBBB-C | D---E <<< D and E are now separated by 3 dashes instead of 1 | FFFFFFFFF <<< the overall picture is now 9 characters wide instead of 10 However, making the overall picture narrower is not our goal, so we keep D and E close together.
{ "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[A[B[C[D[E[F[G[H[I[J[K[L[M[N[O[P[Q[R[S[T[U[V[W[X[", "]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]" }
Returns: { "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", "|", "A", "|", "B", "|", "C", "|", "D", "|", "E", "|", "F", "|", "G", "|", "H", "|", "I", "|", "J", "|", "K", "|", "L", "|", "M", "|", "N", "|", "O", "|", "P", "|", "Q", "|", "R", "|", "S", "|", "T", "|", "U", "|", "V", "|", "W", "|", "X" }
{ "ABCDEFGHIJABCDEFGHIJABCDEFGHIJABCDEFGHIJABCDEFGHIJ", "ABCDEFGHIJ[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[A[B[C[]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]" }
Returns: { "ABCDEFGHIJABCDEFGHIJABCDEFGHIJABCDEFGHIJABCDEFGHIJABCDEFGHIJ", " | ", " 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 ", " | ", " A ", " | ", " B ", " | ", " C " }
{ "TOPCODERCOLLEGIATECHALLENGE[SEMIFINALROOMONE[", "TOMEK[ERYX[]ADRIANKUEGEL[MICKLE[]]]BSTANES", "CU[LARS[RALPHFURMANIAK[]]RUBERIK[]]]]" }
Returns: { " TOPCODERCOLLEGIATECHALLENGE ", " | ", " SEMIFINALROOMONE ", " | ", " TOMEK----------BSTANESCU ", " | | ", "ERYX-ADRIANKUEGEL LARS-RUBERIK", " | | ", " MICKLE RALPHFURMANIAK " }
{ "ABCDEFGHIJABCDEFGHIJABCDEFGHIJABCDEFGHIJABCDEFGHIJ", "ABCDEFGHIJABCDEFGHIJJIHGFEDCBAJIHGFEDCBAJIHGFEDCBA", "JIHGFEDCBAJIHGFEDCBAJIHGFEDCBAJIHGFEDCBAJIHGFEDC[]" }
Returns: { "ABCDEFGHIJABCDEFGHIJABCDEFGHIJABCDEFGHIJABCDEFGHIJABCDEFGHIJABCDEFGHIJJIHGFEDCBAJIHGFEDCBAJIHGFEDCBAJIHGFEDCBAJIHGFEDCBAJIHGFEDCBAJIHGFEDCBAJIHGFEDC" }
{ "LYECAE[EDDRQ[GJ[]]UAHBRY[S[FMVTXYWKFH[ZXKJFBDFK[VX", "[]K[S[]ERNU[OLJUMJG[]IA[UIUVSXT[VEDEVY[]UAPUFURV[", "]]]]]]JULWOKDHE[]]YGPJRAGS[]]CIMIQWBYS[YIF[]]]]" }
Returns: { " LYECAE ", " | ", " EDDRQ------UAHBRY ", " | | ", " GJ S-------CIMIQWBYS", " | | ", " FMVTXYWKFH-YGPJRAGS YIF ", " | ", "ZXKJFBDFK-JULWOKDHE ", " | ", " VX-K ", " | ", " S-ERNU ", " | ", " OLJUMJG-IA ", " | ", " UIUVSXT ", " | ", " VEDEVY-UAPUFURV " }
{ "BEAOFXQGFT[ZT[JJPC[PZZQDNYEZ[IYH[]IADWSTFV[XTSSP[", "PSOPCBTQXN[RTBWVDWTE[JYTQED[]]]]IJZRP[]]]Z[]]]", "QIWQHYTX[AON[YLPLYHVSPD[]]RSE[WMOTFQMTHS[]]]]" }
Returns: { " BEAOFXQGFT ", " | ", " ZT-----------QIWQHYTX ", " | | ", " JJPC AON--------RSE ", " | | | ", " PZZQDNYEZ-Z YLPLYHVSPD WMOTFQMTHS", " | ", "IYH-IADWSTFV ", " | ", " XTSSP-IJZRP ", " | ", "PSOPCBTQXN ", " | ", "RTBWVDWTE ", " | ", " JYTQED " }
{ "W[HP[BBXPRLB[]SUWIHYTPIW[TVYKOFQ[TETZJFUEFJ[EXDWX", "O[INKHWCMD[V[EJKS[]E[N[]]]G[BCXM[]IQEGGL[]]]BE", "AJGTX[DLHD[]AHZYQYIBO[OS[]COYCI[KY[]]]]]EF[]]]]]]" }
Returns: { " W ", " | ", " HP ", " | ", " BBXPRLB-SUWIHYTPIW ", " | ", " TVYKOFQ ", " | ", " TETZJFUEFJ ", " | ", " EXDWXO-EF ", " | ", " INKHWCMD-----BEAJGTX ", " | | ", " V---------G DLHD-AHZYQYIBO", " | | | ", "EJKS-E BCXM-IQEGGL OS-COYCI", " | | ", " N KY " }
{ "YVXGAW[U[]BP[GA[TDJXDGJ[T[FUMH[OEJ[XKYKICD[P", "BFQV[YLN[V[]XJEFCTK[]]]]OQVT[VYSGK[]WPS[ZPDSCEP[", "HGZJOWVTZ[]]FELEJ[QYAPZGX[]]]]]VX[]]]Y[GVI[]]]]]]" }
Returns: { " YVXGAW ", " | ", " U-BP ", " | ", " GA ", " | ", " TDJXDGJ ", " | ", " T----Y ", " | | ", " FUMH GVI ", " | ", " OEJ-VX ", " | ", " XKYKICD------OQVT ", " | | ", " PBFQV VYSGK-WPS ", " | | ", " YLN ZPDSCEP---FELEJ ", " | | | ", "V-XJEFCTK HGZJOWVTZ QYAPZGX" }
{ "ROCBIYZCH[HG[LMFP[]]JENE[UZPCTKS[HYLQWTZG[QKQLYC[T", "[ZVMFE[NKAAPIKULI[]]ULKWBGYE[UQOHC[JJON[]]E[BIMH", "QYRKI[]TEBYUNQ[]]]]HW[SCEWCG[J[S[]]]]]M[]]HM[]]]]" }
Returns: { " ROCBIYZCH ", " | ", " HG----JENE ", " | | ", " LMFP UZPCTKS ", " | ", " HYLQWTZG-HM ", " | ", " QKQLYC-M ", " | ", " T----------------------HW ", " | | ", " ZVMFE--------ULKWBGYE SCEWCG", " | | | ", "NKAAPIKULI UQOHC---------E J ", " | | | ", " JJON BIMHQYRKI-TEBYUNQ S " }
{ "RTBJB[ZQMSZ[YHXXBTGVT[B[WNEM[NSLRECXGEF[RWNSPZZXP[", "MVUQQAK[]]DMLE[NZ[GSPSOCIV[]NNZ[]]OSTGCJULA[]]]RTH", "[]]OWRM[VV[]BUXGZWM[LW[]]]]MYLJBUIWM[]]]OOXU[]]" }
Returns: { " RTBJB ", " | ", " ZQMSZ-OOXU", " | ", " YHXXBTGVT ", " | ", " B-MYLJBUIWM ", " | ", " WNEM---------OWRM ", " | | ", " NSLRECXGEF-RTH VV-BUXGZWM ", " | | ", "RWNSPZZXP----DMLE LW ", " | | ", " MVUQQAK NZ-OSTGCJULA ", " | ", " GSPSOCIV-NNZ " }
{ "NXJI[W[LE[ETFCNO[SQOIK[JSLYXG[ISKZKBB[]LPXAANUW", "U[ZUC[]]]AWNEK[]]]OJPE[TONSVNQFC[IOBCBFE[NXYDKQ[", "JOD[]UU[WYAZRYR[]]]BLBBNRYTQM[]]]]]NDJD[]]KB[]]" }
Returns: { " NXJI ", " | ", " W-KB ", " | ", " LE-NDJD ", " | ", " ETFCNO----------OJPE ", " | | ", " SQOIK TONSVNQFC ", " | | ", " JSLYXG-AWNEK IOBCBFE ", " | | ", "ISKZKBB-LPXAANUWU NXYDKQ-BLBBNRYTQM", " | | ", " ZUC JOD-UU ", " | ", " WYAZRYR " }
{ "TONGHJCQ", "O[HMEM", "[JK[]O[]]RKC[WR[]SSFCZ[]]]" }
Returns: { "TONGHJCQO ", " | ", "HMEM---RKC ", " | | ", "JK-O WR-SSFCZ" }
{ "XMVPEK[STBTZ[ELYU[OBWK[QWDPOA[IREHROGRAS[]]CAKK[V", "GHCFSYFS[]B[UTGLJH[RWGRDKADZ[VOFPAGZF[]JXTEOVSK[]", "]]]]]]VVA[BKCQNUZFMS[]LV[HIAKENZUF[]]]]FHBT[]]" }
Returns: { " XMVPEK ", " | ", " STBTZ-FHBT ", " | ", " ELYU------VVA ", " | | ", " OBWK BKCQNUZFMS-LV ", " | | ", " QWDPOA-------CAKK HIAKENZUF", " | | ", "IREHROGRAS VGHCFSYFS-B ", " | ", " UTGLJH ", " | ", " RWGRDKADZ ", " | ", " VOFPAGZF-JXTEOVSK" }
{ "YUFERDOCA[ME[]OHUGGM[XPAT[B[F[]]VDFQVD[MELL[SSZPJ", "YTXZX[SKJCHI[]RLDOBRT[]]]HCDVSEFQM[QLKDCIYPDQ[JI[", "]]GVAFDGQQV[CIPCYKORVG[]CNMPBB[SPBIB[]]]]]]PZ[]]]" }
Returns: { " YUFERDOCA ", " | ", " ME-OHUGGM ", " | ", " XPAT-PZ ", " | ", " B---------VDFQVD ", " | | ", " F MELL---------HCDVSEFQM ", " | | ", " SSZPJYTXZX QLKDCIYPDQ-GVAFDGQQV ", " | | | ", "SKJCHI-RLDOBRT JI CIPCYKORVG-CNMPBB", " | ", " SPBIB " }
{ "SWGX[XBNYOE[KYGUQQEG[EIKZXVKTBG[]]]]" }
Returns: { " SWGX ", " | ", " XBNYOE ", " | ", " KYGUQQEG ", " | ", "EIKZXVKTBG" }
{ "IGTIFSW[HPN[APIKU[XSHT[AQYBCSBYH[]CKZALKIARD", "[BEI[]]]CYWIX[FC[U[]]TVP[EYIGXDO[]XI[BAFB[KSHHBK[", "NL[]]]JKFQUVF[CVOCV[BRINRJ[YOLSIY[]WOQ[]]]]]]]]]]" }
Returns: { " IGTIFSW ", " | ", " HPN ", " | ", " APIKU ", " | ", " XSHT----------CYWIX ", " | | ", "AQYBCSBYH-CKZALKIARD FC---TVP ", " | | | ", " BEI U EYIGXDO-XI ", " | ", " BAFB-JKFQUVF ", " | | ", " KSHHBK CVOCV ", " | | ", " NL BRINRJ ", " | ", " YOLSIY-WOQ" }
{ "MHR[SVRXTA[LSLBR[U[]LDI[OJDPQZXXG[VFCTMFNV[WFVVOU[", "KZCCZGTX[VZOAZCYO[QBBYDJKFS[A[CWSISYL[]IWLJZZVK[]]", "OBKK[Y[]LKXIEBEYT[]]]]YBYRR[]]JLPD[]]]]]]]WD[]]" }
Returns: { " MHR ", " | ", " SVRXTA-WD ", " | ", " LSLBR ", " | ", " U-LDI ", " | ", " OJDPQZXXG ", " | ", " VFCTMFNV ", " | ", " WFVVOU ", " | ", " KZCCZGTX-JLPD", " | ", " VZOAZCYO-YBYRR ", " | ", " QBBYDJKFS ", " | ", " A-------------OBKK ", " | | ", "CWSISYL-IWLJZZVK Y-LKXIEBEYT" }
{ "AINQPKDRKY[VMGT[XGK[WGGQJ[UN[]KDYJA[EK[PJLXKT[EZCS", "[DUXTU[JNBXYUTICV[VPWF[KYZL[C[]MLDTLJZF[]]]]XVSRK", "UANXG[]]ISWHAGIEP[SESRJ[]]]]KQWSYPC[]]]]]VZ[]]]" }
Returns: { " AINQPKDRKY ", " | ", " VMGT ", " | ", " XGK-VZ ", " | ", " WGGQJ ", " | ", " UN-KDYJA ", " | ", " EK ", " | ", " PJLXKT-KQWSYPC", " | ", " EZCS ", " | ", " DUXTU-------ISWHAGIEP ", " | | ", "JNBXYUTICV-XVSRKUANXG SESRJ ", " | ", " VPWF ", " | ", " KYZL ", " | ", "C-MLDTLJZF " }
{ "WLLVDPT[WRJ[ZA", "K[]]DBB[VRCIFFKU", "SS[]QQJPNHM[ZBBINXUSIU[]ATHXBKKJAU[BDWNDY[]]]]]" }
Returns: { " WLLVDPT ", " | ", "WRJ--------DBB ", " | | ", "ZAK VRCIFFKUSS-QQJPNHM ", " | ", " ZBBINXUSIU-ATHXBKKJAU", " | ", " BDWNDY " }
{ "TUNSO[ALKK[OV[AZZECZ[Q[U[]IEROCCUGOD[TPUVATG", "UG[QJDG[X[AKXACE[GP[]]]PRZ[]]GERRVVROR[]]]]RS", "NKKZDN[]]]]NNXDT[Q[QAIEZX[]DWN[]]]]" }
Returns: { " TUNSO ", " | ", " ALKK----NNXDT ", " | | ", " OV Q ", " | | ", " AZZECZ QAIEZX-DWN", " | ", " Q-RSNKKZDN ", " | ", " U-IEROCCUGOD ", " | ", " TPUVATGUG ", " | ", " QJDG-GERRVVROR ", " | ", " X-PRZ ", " | ", "AKXACE ", " | ", " GP " }
{ "TRBWWVKZE[MUMEHWJUW[ZPZXWGAA[MNE[JZFCVEH[YWR[HHO", "DTCTQ[]MDZ[WXHDCTK[XR[TNVTBJTRY[VRW[]]DIEIUS[TUH", "OFPKO[EEFJMJMHZN[]]]]]YPOXTTR[]]]Y[]]]J[]]BA[]]]" }
Returns: { " TRBWWVKZE ", " | ", " MUMEHWJUW ", " | ", " ZPZXWGAA-BA ", " | ", " MNE-J ", " | ", " JZFCVEH ", " | ", " YWR-Y ", " | ", " HHODTCTQ-MDZ ", " | ", " WXHDCTK-YPOXTTR", " | ", " XR ", " | ", "TNVTBJTRY-DIEIUS ", " | | ", " VRW TUHOFPKO ", " | ", " EEFJMJMHZN " }
{ "SNX[LKFZPXG[EQZPPU[NMEXQDHMT[NHHV[]]]HCMVYM[]", "]RXOG[VMEJUBYN[RJMRIJ[VLYVTK[YQTQVYYWH[TZBN[BURH", "RHH[]]]]HTJC[]]STLHCIFW[TNLJV[]U[]]]LHN[]]]" }
Returns: { " SNX ", " | ", " LKFZPXG--------RXOG ", " | | ", " EQZPPU-HCMVYM VMEJUBYN-LHN", " | | ", "NMEXQDHMT RJMRIJ---STLHCIFW", " | | | ", " NHHV VLYVTK-HTJC TNLJV-U ", " | ", " YQTQVYYWH ", " | ", " TZBN ", " | ", " BURHRHH " }
{ "ECBJFMZM[RLKXBCQCG[]VSHKKFGQ[QV[UQVLP[]]NSMPOVEGPG", "[HHF[FNH[KHWSHBYYWW[]LD[]]YIRW[Y[]IRLR[A[]PYZUVRC", "[L[]]]]]HXSHYLZI[ZQIICW[LQOBYL[]OSSMGMJ[]]]]]]" }
Returns: { " ECBJFMZM ", " | ", " RLKXBCQCG-VSHKKFGQ ", " | ", " QV--------NSMPOVEGPG ", " | | ", " UQVLP HHF-----------HXSHYLZI ", " | | ", " FNH-------YIRW ZQIICW ", " | | | ", "KHWSHBYYWW-LD Y-IRLR LQOBYL-OSSMGMJ", " | ", " A-PYZUVRC ", " | ", " L " }
{ "UHUZC[UNUP[UCHQQKTT[UEUR[Y[SMUN", "BBCQAY[", "]WMNY[WUGD[PROCS[EBRU[]]]]]NBCGLRRSKX[]]]]]" }
Returns: { " UHUZC ", " | ", " UNUP ", " | ", " UCHQQKTT ", " | ", " UEUR ", " | ", " Y-NBCGLRRSKX", " | ", "SMUNBBCQAY-WMNY ", " | ", " WUGD ", " | ", " PROCS ", " | ", " EBRU " }
{ "A[B[BBBBBBBBBB[B[BBBBBBBBBB[B[]]]]]CCCCCCC", "CCC[C[CCCCCCCCCCC[C[CCCCCCCCCCCC[]]]]]]" }
Returns: { " A ", " | ", " B--CCCCCCCCCC ", " | | ", "BBBBBBBBBB C ", " | | ", " B CCCCCCCCCCC ", " | | ", "BBBBBBBBBB C ", " | | ", " B CCCCCCCCCCCC" }
{ "DTQVFOZGQSJKQDXIDCVDQTDIYPSTZBTZNZGMOUOZYFLD[RYDE", "KG[]PCFETYF[HMFQCZPCHPAB[GWSAUAUOBNOWXKJLDKKUOKLYY", "MMTSLKGLVTEWEOFHE[]DWK[CRGSAB[]]]ZMWFBW[SU[]]]]" }
Returns: { " DTQVFOZGQSJKQDXIDCVDQTDIYPSTZBTZNZGMOUOZYFLD", " | ", " RYDEKG-PCFETYF ", " | ", " HMFQCZPCHPAB----------------ZMWFBW ", " | | ", "GWSAUAUOBNOWXKJLDKKUOKLYYMMTSLKGLVTEWEOFHE-DWK SU ", " | ", " CRGSAB " }
{ "HQ[BNFMNOKIMW[F[]FTCFNRTIBOGGHGGIJWSSKJQAWQWZWEQOE", "RISYU[CTHZUSZCBGS[AKCNXLAYYQC[Z[]GFJLYAUNCYFOYCCO", "DXZNN[HZQWKQWMXMIZ[]BWCHCX[MMTLEICS[]]]]]]]CP[]]" }
Returns: { " HQ ", " | ", " BNFMNOKIMW-CP ", " | ", "F-FTCFNRTIBOGGHGGIJWSSKJQAWQWZWEQOERISYU", " | ", " CTHZUSZCBGS ", " | ", " AKCNXLAYYQC ", " | ", " Z-GFJLYAUNCYFOYCCODXZNN ", " | ", " HZQWKQWMXMIZ-BWCHCX ", " | ", " MMTLEICS " }
{ "JPKMXYIEKHOUAUDZZUGNWHKTVSRVNEBNNRWNZOBHFKNOJRGNFL", "CZYKSZXGVCWTGMHXOXKDBTRQBUQRKZZSZAAWHXDAFHFPOU", "RJTCOIGKSRPCCP[VJPCLTUMWLJVNYRFJSDHPAG[JUCTT[]]]" }
Returns: { "JPKMXYIEKHOUAUDZZUGNWHKTVSRVNEBNNRWNZOBHFKNOJRGNFLCZYKSZXGVCWTGMHXOXKDBTRQBUQRKZZSZAAWHXDAFHFPOURJTCOIGKSRPCCP", " | ", " VJPCLTUMWLJVNYRFJSDHPAG ", " | ", " JUCTT " }
{ "JRKOAEZJJQLLRVRLXFCCQPQABNNRANOKNGNLYCJELEUIJR", "HDPJJFNVCUPNODTPHCOGZGCLDDGLJCUYUJOTZSDPUIBVFTOWEC", "QWOHIDAV[B[]ILKFFABREYHJRZUNKLSNJBUIOCOLZBXIZ[]]" }
Returns: { "JRKOAEZJJQLLRVRLXFCCQPQABNNRANOKNGNLYCJELEUIJRHDPJJFNVCUPNODTPHCOGZGCLDDGLJCUYUJOTZSDPUIBVFTOWECQWOHIDAV", " | ", " B-ILKFFABREYHJRZUNKLSNJBUIOCOLZBXIZ " }
{ "VUCNNDC[JOCJWMVVJCWR[DWIDVTFJB[DFOV[]UNFTTFVSBRVH", "UOMGYFXWPCCZYGREEVYOEYDJXBZYTGXPQTRZJJOPWUMYMLXQ", "NLKVJZKVVWPNIJGKSQRPRCBT[LC[DNXRLXXSY[]]]]]KMX[]]" }
Returns: { " VUCNNDC ", " | ", " JOCJWMVVJCWR-KMX ", " | ", " DWIDVTFJB ", " | ", "DFOV-UNFTTFVSBRVHUOMGYFXWPCCZYGREEVYOEYDJXBZYTGXPQTRZJJOPWUMYMLXQNLKVJZKVVWPNIJGKSQRPRCBT", " | ", " LC ", " | ", " DNXRLXXSY " }
{ "R[V[KPBRCMGLIIXB[FHIIASESSDQUNTYPZRNXSJPVROOJA", "VNOHRKBUKJZRDZKHXRRSDECMVFABDKCRRYWS[]IGYWTTWZ", "NK[]]EGANELGO[]]OW[ZYNQ[K[]YQROWCRFNBSAFAFOR[]]]]" }
Returns: { " R ", " | ", " V-------------------------------------------OW ", " | | ", " KPBRCMGLIIXB-EGANELGO ZYNQ ", " | | ", "FHIIASESSDQUNTYPZRNXSJPVROOJAVNOHRKBUKJZRDZKHXRRSDECMVFABDKCRRYWS-IGYWTTWZNK K-YQROWCRFNBSAFAFOR" }
{ "UDUYEEA[WIHTQOQVMAMN[ELCYGZR[COZ[]UIUNEAMXAFJ[SUAD", "XMWDJCLYPWVRACHQZAFZXIEAMJRZHBDERWSMSBCLT[JUOSULNV", "UVO[XMQGMCFJ[ZAQFLSX[R[]IB[V[]]]]C[]]RY[]]]]]]" }
Returns: { " UDUYEEA ", " | ", " WIHTQOQVMAMN ", " | ", " ELCYGZR ", " | ", " COZ-UIUNEAMXAFJ ", " | ", "SUADXMWDJCLYPWVRACHQZAFZXIEAMJRZHBDERWSMSBCLT", " | ", " JUOSULNVUVO-RY ", " | ", " XMQGMCFJ-C ", " | ", " ZAQFLSX ", " | ", " R-IB ", " | ", " V " }
{ "WDDJXGVAJHLQRJKIXRYLBOVLASQCMTZWHREDFXPIWNVMQUFPHE", "XYBEXGLKBTZIEVU[VCYFKTRQDO[OKCRA[OBO[]]TCVDLBRP", "[HU[FKOMAXSNRZ[GMWT[]]BNPIYLGNAX[]]HCH[]]]VILH[]]" }
Returns: { "WDDJXGVAJHLQRJKIXRYLBOVLASQCMTZWHREDFXPIWNVMQUFPHEXYBEXGLKBTZIEVU", " | ", " VCYFKTRQDO-VILH ", " | ", " OKCRA-TCVDLBRP ", " | | ", " OBO HU-HCH ", " | ", " FKOMAXSNRZ-BNPIYLGNAX ", " | ", " GMWT " }
{ "HGORAIUUNGT[ZQIBGKZUTIH[QQAHABEAYNVW[DZEPIQZSQXGT", "NFAPKIJIMSPXUQMZDYFJTJYTDPWVUADJMJILEZAVKOECIBVYK", "[TQHOJ[ZYD[]VUBWLXRL[UHXOHIYVBG[]HS[Z[]]]]]]]]" }
Returns: { " HGORAIUUNGT ", " | ", " ZQIBGKZUTIH ", " | ", " QQAHABEAYNVW ", " | ", "DZEPIQZSQXGTNFAPKIJIMSPXUQMZDYFJTJYTDPWVUADJMJILEZAVKOECIBVYK", " | ", " TQHOJ ", " | ", " ZYD-VUBWLXRL ", " | ", " UHXOHIYVBG-HS ", " | ", " Z " }
{ "UWUXNSUFMDSURYEEWGEHAXHFAKQZFNDQKYFZVIIKTUDGHQE", "QO[THDWNPMZRTNYHKAAGYKFJQGSGPZGHJYISRC[NSVBBCNLRA", "PEVPGTBOWRQWLHMUJFOHFYAYSLWKKIKZ[SQF[]HV[]]]M[]]" }
Returns: { "UWUXNSUFMDSURYEEWGEHAXHFAKQZFNDQKYFZVIIKTUDGHQEQO", " | ", " THDWNPMZRTNYHKAAGYKFJQGSGPZGHJYISRC-M ", " | ", " NSVBBCNLRAPEVPGTBOWRQWLHMUJFOHFYAYSLWKKIKZ ", " | ", " SQF-HV " }
{ "AWHWEOGDUX[UFSA[]OXPRXLBPH[BKZIMUQRAQKYXPWOTTIR", "IYGZJDMJVNITFUUFALCC[PMKTKRLESWKJE[VQMAEAXSL[]]ROR", "XP[NKGO[]MZSMPIAEC[WSKGDEDNBJDXUTFZ[]YJ[A[]]]]]]]" }
Returns: { " AWHWEOGDUX ", " | ", " UFSA-OXPRXLBPH ", " | ", "BKZIMUQRAQKYXPWOTTIRIYGZJDMJVNITFUUFALCC", " | ", " PMKTKRLESWKJE---RORXP ", " | | ", " VQMAEAXSL NKGO-MZSMPIAEC ", " | ", " WSKGDEDNBJDXUTFZ-YJ", " | ", " A " }
{ "DZIMHRM[DHPYINGEDOVVFRTUBRNISQGYQVGIMPHKRZPABY", "NLOHRPGGO[ZVRWNPSBOMCSLYZOMTMCPFYBOZAJ[WL[JTJUDV[", "GCKSQ[GXWAILE[]RAVA[]]OSBQIOMAKJ[]]MMZTB[]]]]X[]]" }
Returns: { " DZIMHRM ", " | ", "DHPYINGEDOVVFRTUBRNISQGYQVGIMPHKRZPABYNLOHRPGGO-X", " | ", " ZVRWNPSBOMCSLYZOMTMCPFYBOZAJ ", " | ", " WL ", " | ", " JTJUDV-MMZTB ", " | ", " GCKSQ-OSBQIOMAKJ ", " | ", " GXWAILE-RAVA " }
{ "FCQKLT[G[]YJP[RII[]NYIOPUQ[BJCGDPSK[SYCJMCOVBCSV", "[RXTNVZUFNAEEQLNDCKSMBNCT[CQGZYKIL[CLLXKKIEQIHENAX", "GVRGLELZUXYYQVDGA[]]]]EFH[KCGI[LNH[]]]]HENW[]]]]" }
Returns: { " FCQKLT ", " | ", " G-YJP ", " | ", " RII-NYIOPUQ ", " | ", " BJCGDPSK-HENW ", " | ", " SYCJMCOVBCSV-------EFH ", " | | ", " RXTNVZUFNAEEQLNDCKSMBNCT KCGI", " | | ", " CQGZYKIL LNH ", " | ", "CLLXKKIEQIHENAXGVRGLELZUXYYQVDGA " }
{ "ZNC[TKTCDZDLZWWZYUEGKLMCJNICYIVCCRKULEGFIXNJJLLISW", "OHT[JRITVYMHXJZUJYAQSZMTPIRWYDIABQHXLWZHNHPCSMIYUR", "WLFEEKVDROPZBWMLXL[WPZXIKDIYK[H[]M[]]]L[]]BA[]]" }
Returns: { " ZNC ", " | ", " TKTCDZDLZWWZYUEGKLMCJNICYIVCCRKULEGFIXNJJLLISWOHT-BA ", " | ", "JRITVYMHXJZUJYAQSZMTPIRWYDIABQHXLWZHNHPCSMIYURWLFEEKVDROPZBWMLXL-L", " | ", " WPZXIKDIYK ", " | ", " H-M " }
{ "DD[OQFKM[CC[DMEFVSOYRGYZSVHKTBIUDOZBMVZIUFPUDZYNBK", "TYASKMUJQHZWMQOSLXFEPQVXNXPTJOIOHHL[H[]FGN[RILQFSM", "ASYLKEUPHGOMSNOGAGTGDRV[PB[]]Y[]]]T[]]YU[]]]" }
Returns: { " DD ", " | ", " OQFKM ", " | ", " CC-YU ", " | ", "DMEFVSOYRGYZSVHKTBIUDOZBMVZIUFPUDZYNBKTYASKMUJQHZWMQOSLXFEPQVXNXPTJOIOHHL-T", " | ", " H-FGN ", " | ", " RILQFSMASYLKEUPHGOMSNOGAGTGDRV-Y ", " | ", " PB " }
{ "FXTAQTNR[O[ASCGAIPPEXETRLAXWJPQRHZLTROLEPIEOBCA", "BTVHKEKJPJJAVYXKHLUSKCAYQBLAFFOHPARJQTMCPGMU[]]VG", "KJDIWKGOHURNMHXUZUPUPQGTBVBUOJFEEIU[QPUW[]X[]]]" }
Returns: { " FXTAQTNR ", " | ", " O-------------------------VGKJDIWKGOHURNMHXUZUPUPQGTBVBUOJFEEIU", " | | ", "ASCGAIPPEXETRLAXWJPQRHZLTROLEPIEOBCABTVHKEKJPJJAVYXKHLUSKCAYQBLAFFOHPARJQTMCPGMU QPUW-X " }
{ "UPCYYUPTVNQYNGHVVMWPWKFBOPAHWAONJDHMKWNXPRCDKOMQ", "LFZIONTNXGYASMVPYQKQPOVOEDMEFVYKLFBYGESWTFSJKINRJM", "OOFNOUGEDHCPPOEYOQHAXP[FFWLKVOXQKWVCHYQCOCKJH[]]" }
Returns: { "UPCYYUPTVNQYNGHVVMWPWKFBOPAHWAONJDHMKWNXPRCDKOMQLFZIONTNXGYASMVPYQKQPOVOEDMEFVYKLFBYGESWTFSJKINRJMOOFNOUGEDHCPPOEYOQHAXP", " | ", " FFWLKVOXQKWVCHYQCOCKJH " }
{ "NUNFZASZCM[WKCUOVLWGIGKEAMRMUGJYVDWNUNGXYHGSCOAZU", "SFHGKXUEDSTWRHZBHWPGKFIPTCQCZMSHQQXITGMOBNKYPST", "QSSQIPPWHZJRAAORTILQDKUWWYUQFINC[UQURLHUNC[]]]" }
Returns: { " NUNFZASZCM ", " | ", "WKCUOVLWGIGKEAMRMUGJYVDWNUNGXYHGSCOAZUSFHGKXUEDSTWRHZBHWPGKFIPTCQCZMSHQQXITGMOBNKYPSTQSSQIPPWHZJRAAORTILQDKUWWYUQFINC", " | ", " UQURLHUNC " }
{ "QBOWKHUSPCOTMGLDOXEWLZXPQKCABAPDHZTFCMPEKAFRHCXOJ", "PAWNUKINMZIEVYRZPGJP[OFLHTPOT[C[]KN[EZTAQJONUPG[DQ", "[]QAINZCYCCOYQGLYFKIMNOSBKSKSQRZNIHIESQ[]]]]]" }
Returns: { "QBOWKHUSPCOTMGLDOXEWLZXPQKCABAPDHZTFCMPEKAFRHCXOJPAWNUKINMZIEVYRZPGJP", " | ", " OFLHTPOT ", " | ", " C-KN ", " | ", " EZTAQJONUPG ", " | ", " DQ-QAINZCYCCOYQGLYFKIMNOSBKSKSQRZNIHIESQ " }
{ "DDBRTHWCAXN[MKCBRJV[YQMXJQJT[ULZ[]RLQNJANK[UPDZYXN", "[]GN[UKQLUPNBIM[UA[]FMKRTOPGRBIXMVER[]]]]]QFOBPD", "KBOWJQTHZZIKLIDQGAVSIUDCIVJGMPXEHJEZJJB[]]K[]]" }
Returns: { " DDBRTHWCAXN ", " | ", " MKCBRJV-K ", " | ", " YQMXJQJT-QFOBPDKBOWJQTHZZIKLIDQGAVSIUDCIVJGMPXEHJEZJJB", " | ", "ULZ-RLQNJANK ", " | ", " UPDZYXN-GN ", " | ", " UKQLUPNBIM ", " | ", " UA-FMKRTOPGRBIXMVER " }
{"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA", "AAAAAAAAAAAAAAAAAAAAAAAAAA[A[A[A[A[A[A[A[A[A[A[A[A", "[A[A[A[A[A[A[A[A[A[A[A[A[]]]]]]]]]]]]]]]]]]]]]]]]]"}
Returns: { "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA", " | ", " 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[B[]C[ABCDEFGHIJK[]]]"}
Returns: { " A ", " | ", " B-C ", " | ", "ABCDEFGHIJK" }
{"M[N[O[P[QRSTUV[]]]]A[B[]C[ABCDEFGHIJK[]]]]"}
Returns: { " M ", " | ", " N-----A ", " | | ", " O B-C ", " | | ", " P ABCDEFGHIJK", " | ", "QRSTUV " }
{ "TOPCODEROPEN[SEMIFINAL[ROOM[SNAPDRAGON[]BSTANESCU[", "]]ONE[VENCO[]DPECORA[]]]SEMIFINAL[ROOM[TOMEK[]BLAD", "ERUNNER[]]TWO[AMBROSE[]MADKING[]]]]" }
Returns: { " TOPCODEROPEN ", " | ", " SEMIFINAL------------------------SEMIFINAL ", " | | ", " ROOM--------------ONE ROOM-------------TWO ", " | | | | ", "SNAPDRAGON-BSTANESCU VENCO-DPECORA TOMEK-BLADERUNNER AMBROSE-MADKING" }