Mi reloj me habla P36543


Statement
 

pdf   zip

html

¿Tienes uno de esos típicos despertadores digitales con radio? En estos despertadores (y en la gran mayoría de todos los relojes digitales) los números se representan con dígitos de 7 segmentos. Estos son los 10 dígitos,

donde hemos marcado en negrita aquellos dígitos (0, 1 y 5) que, además de como números, pueden ser interpretados como letras sin excesiva imaginación (O, I y S). En cambio, si diéramos la vuelta a nuestro querido despertador lo que veríamos sería

donde ahora son los dígitos 7, 5, 4, 3, 1 y 0 los que pueden ser interpretados como letras L, S, H, E, I y O.

Escribe un programa que descubra todas las palabras (combinaciones de 4 dígitos que pueden ser intrepetados como letras) que aparecerán en tu reloj despertador (tanto si lo tienes del derecho, como del revés) entre dos horas concretas.

Entrada

Cada entrada contiene exactamente 3 líneas. La primera línea contiene la palabra STD o UPSIDEDOWN, e indica si el reloj despertador está del derecho o del revés. La segunda y la tercera línea contienen la hora de inicio y la hora de final (diferentes entre sí), y se dan en el formato HH:MM, donde HH y MM son la hora y el minuto, que siempre se darán con dos dígitos.

Salida

Escribe todas las palabras (secuencias de 4 dígitos interpretables como letras) que mostrará el reloj despertador desde que marca la hora de inicio, hasta que marca la hora de final, ambas inclusive. Escribe las palabras en mayúscula, una por línea, y ordenadas alfabéticamente.

Puntuación

  • Test1:   Resolver varios casos de tipo STD.  60 Puntos 
  • Test2:   Resolver varios casos de tipo UPSIDEDOWN.  40 Puntos 
Public test cases
  • Input

    STD
    05:02
    05:50
    

    Output

    OSII
    OSIO
    OSIS
    OSOS
    OSSO
    
  • Input

    STD
    22:00
    23:59
    

    Output

    
            
                                
  • Input

    UPSIDEDOWN
    05:37
    05:50
    

    Output

    EHSO
    HHSO
    IHSO
    LESO
    LHSO
    OHSO
    OSSO
    SHSO
    
  • Input

    UPSIDEDOWN
    23:12
    00:13
    

    Output

    EIOO
    EOOO
    HOOO
    IIOO
    IOOO
    LOOO
    OIOO
    OOOO
    SOOO
    
  • Information
    Author
    Omer Giménez
    Language
    Spanish
    Official solutions
    C++
    User solutions
    C++