Lettura del testo del font millitext
C'è un carattere qui che adatta ogni personaggio in un singolo blocco di pixel 1x5. Lo fa (supponendo che tu stia utilizzando uno schermo LCD) utilizzando i canali RGB di ciascun pixel per espandere un pixel in tre colonne secondarie, una per ciascun canale. Il tuo compito è prendere una stringa di testo codificata in questo carattere e "decodificarlo".
Alfabeto Millitext
CHARACTER: 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ
ENCODING: WYWBMRRMMMWYWYWWWMWBMRMYGYGYCWMMMMMW
MGBWMRRMMMMMRMRRRMGBMRWMMMMMRGMMMMMB
MGWWWWWBWWWYRMWWMWGBYRWMMYMYGGMMWGGG
MGRBBBMBMBMMRMRRMMGBMRMMMRWMBGMCWMGR
WWWWBWWBWWMYWYWRWMWWMWMMGRCMYGWBMMGW
Ho abbreviato ogni colore in un simbolo di un carattere (R = rosso, G = verde, B = blu, C = ciano, Y = giallo, M = magenta, W = bianco).
Formato di input
Il formato di input per questo è piuttosto aperto. Puoi avere l'input come un array contenente ogni colonna, un array contenente ogni riga, a char[][]o qualcosa del genere. Puoi anche scegliere di usare le parole complete "rosso", "verde", "blu", con maiuscole / minuscole di tua scelta (ma deve essere coerente per ogni parola! Non puoi usare "ROSSO" e fare anche "verde" o "Blu").
Se la tua lingua sembra supportarla, puoi anche avere input in colori (tuttavia ciò potrebbe funzionare, non lo so a mano).
Puoi presumere che l'input conterrà SOLO caratteri codificati nell'alfabeto sopra (in particolare, non ci saranno spazi o punteggiatura nell'output).
Formato di output
Puoi generare una stringa o una sorta di array di caratteri. Puoi scegliere se le lettere sono maiuscole o minuscole, ma devono avere tutte lo stesso caso.
Esempio
MWRRGMGYRY
MRRRMMMMRM
WWRRMWMYRM -> HELLOWORLD
MRRRMWMMRM
MWWWGMGMWY
Regole
Questo è code-golf , quindi vince la risposta più breve!
Set di test
WMWGMWWMYYGMYWGMBMMYWYGMWYWMWRWWMYGW
GMRMMGRMMMMMMRMMBMWMRMMMRMGMRRMBMMMR
GWWMMGRYYYMWMWMGBMWYWMMMWYGWWRWGGMMM -> THEQUICKBROWNFOXJUMPEDOVERTHELAZYDOG
GMRWMGRMMMMWMRMMBMMRRMMCRMGMRRMRGMMM
GMWCWWWMYMGMMRGMWWMRWYGBWMGMWWMWGYGW