Primera subpalabra repetida de tamaño 3 X98718


Statement
 

pdf   zip

html

Implementad un programa tal que, dada una una secuencia de caracteres sobre {a,b}, diga cual es la primera subpalabra de tamaño 3 que se repite si los comenzamos a leer desde el principio, y en que posición se produce esa primera repetición (las posiciones se suponen indexadas comenzando desde 0).

Consideramos repeticiones incluyendo solapamientos. Por ejemplo, en la secuencia ababa, la subpalabra aba tiene tamaño 3 y se repite por primera vez a posición 2.

Se garantiza que habrá al menos una repetición de alguna subpalabra de tamaño 3.

Entrada

La entrada contiene una única linea con una secuencia de carácteres consecutivos sobre {a,b}. Se garantiza que alguna subpalabra de tamaño 3 aparece más de una vez en la secuencia.

Salida

La salida contiene la primera subpalabra de tamaño 3 que se repite, y la posición del primer carácter de la primera repetición (indexando las posiciones desde 0). Esos datos deben aparecer en una linea y separados por un espacio en blanco.

Observación

No useis strings ni ningún otro método de almacenamiento masivo de datos. Leed y tratad la entrada carácter a carácter. Por favor, procurad no continuar leyendo la entrada cuando ya no sea necesario.

Public test cases
  • Input

    bbbaaaaaabaaababababaaabbbbbbabbaabbbabbabbaaaaa
    

    Output

    aaa 4
    
  • Input

    aaabbaabbbaaabaaababaababbaaaababaaabbaabaabbbbb
    

    Output

    aab 5
    
  • Input

    abbbaaababaabaaaabaabbaaabbbabbaabab
    

    Output

    aba 8
    
  • Input

    aaabbabbabbaaaba
    

    Output

    abb 5
    
  • Input

    baaababbbaaababbb
    

    Output

    baa 8
    
  • Input

    aabbababaabbb
    

    Output

    bab 5
    
  • Input

    bbabaaabbabbaabaaabbbbaabababaaaabaaaababa
    

    Output

    bba 7
    
  • Input

    bbbaaababbbabbbbbbabb
    

    Output

    bbb 8
    
  • Information
    Author
    PRO1
    Language
    Spanish
    Translator
    Original language
    Catalan
    Other languages
    Catalan English
    Official solutions
    C++
    User solutions
    C++