Problema 1
Messenger
messen.pas, messen.c, messen.cpp
Seguramente te habrás percatado que al escribir ciertos caracteres en el messenger, te convierte esos caracteres en un emoticono, una pequeña imagen que significa algo. Tu misión en este programa es convertir un conjunto de caracteres a otro conjunto de caracteres (ya que a nuestros programas aún no les sabemos meter gráficos tendremos que conformarnos :-( ).
Recibirás un diccionario el cual contiene palabras con su traducción a emoticono y luego una frase en la cual debes poner tantos emoticonos como puedas.
Problema
Cambiar un conjunto de caracteres a otro si está en el diccionario.
Entrada
En el primera línea habrá un número n, 1 ≤ n ≤ 100, que indica la cantidad de palabras en el diccionario (con su traducción a emoticono).
En cada pareja de renglones de las siguientes 2n líneas tendrás un emoticono seguido de la palabra, o palabras, que representa.
La última línea tendrá la frase a la que deberás poner emoticonos.
Los caracteres podrán ser cualesquiera 256 contenidos en la tabla ASCII.
Tanto la cadena de entrada como la de salida no contendrán más de 200 caracteres, y cada palabra o emoticono no tendrá mas de 20 caracteres.
Mayúsculas y minúsculas son consideradas diferentes.
Lo siguiente nunca pasará:
a) En el diccionario, ninguna cadena será subcadena de otra; por ejemplo:
feliz
:)
muy feliz
:D
Ya que “feliz” está contenida en “muy feliz” (en otras palabras “feliz” es subcadena de “muy feliz”).
b) No habrá 2 emoticonos “encimados” en la frase de entrada; por ejemplo:
<:o)
payaso
(#)
sol
payasol
Ya que “payasol” contiene tanto a sol como a payaso... se enciman.
Salida
Una sola línea con la frase traducida con emoticonos.
Ejemplo
entrada | salida |
4 :P sacalengua :D muy feliz <:o) payaso <o)))>< pez El payaso de tu hermano es muy feliz con su nuevo pez. |
El <:o) de tu hermano es :D con su nuevo <o)))>< |
Concurso: | 12a OMI, Aguascalientes - Examen de Selección (2a parte). 5/Mayo/2007 |
Propuesto por: | Luis Eduardo Enciso Osuna |
Ayuda: | entradas, salidas, sugerencias |
Soluciones: | messen.pas, messen.c, messen.cpp |