Como probablemente sabrás, uno de los modos más conocidos (si bien, no el único) de describir un color es el modelo RGB (Red-Green-Blue), que describe la intensidad de los colores primarios que forman el color. Típicamente, la intensidad de cada color primerario se da con un byte de información (0-255), donde 0 indica la mínima intensidad y 255 la máxima. Por ejemplo, el color es verde, y los colores (rojo y verde) y (verde y azul) dan lugar a los colores amarillo y cyan.
En el lenguaje HTML, los colores (las tuplas de 3 valores de 0 al 255) se describen en notación hexadecimal usando exactamente 7 caracteres, en la forma , donde (respectivamente, y ) es la codificación en hexadecimal del valor correspondiente a la intensidad del rojo (respectivamente, verde y azul). Los números hexadecimales son aquellos donde usamos base 16 () en vez de base 10. Los números del 0 al 255 se representan, en hexadecimal, del siguiente modo:
¿Te atreves a hacer un programa que sea capaz de convertir los colores de uno a otro formato?
Una secuencia de casos de prueba, cada uno de los cuales ocupa una
línea. Cada caso de pruebas empieza con una palabra (NORMAL
o HTML) seguido de la descripción del color (tres enteros
separados por espacios en el primer caso, y siete caracteres de la forma
en el segundo).
Para cada caso de pruebas, escribe la traducción del color descrito al otro formato.
TestA: Entradas cuyos casos de prueba sólo son
de la forma HTML.
TestB: Entradas cuyos casos de prueba sólo son
de la forma NORMAL.
TestC: Entradas con casos de prueba de ambos tipos.
Input
NORMAL 0 0 0 NORMAL 1 2 3 NORMAL 9 10 11 NORMAL 15 16 17 NORMAL 231 42 212 NORMAL 128 129 101 NORMAL 248 249 250 NORMAL 255 255 255
Output
#000000 #010203 #090a0b #0f1011 #e72ad4 #808165 #f8f9fa #ffffff
Input
HTML #000000 HTML #ffffff HTML #091011 HTML #090a0b HTML #abbacc HTML #abcdef HTML #a9aa9c
Output
0 0 0 255 255 255 9 16 17 9 10 11 171 186 204 171 205 239 169 170 156