Subsecuencias crecientes P96556


Statement
 

pdf   zip

html

Escribid un programa que calcule cuantas subsecuencias estrictamente crecientes de al menos dos letras contiene una palabra dada. Por ejemplo, la palabra arroz (la segunda r está escrita en cursiva y negrita para diferenciarla) contiene las subsecuencias crecientes arz, ar, arz, ar, aoz, ao, az, rz, rz y oz.

Entrada

La entrada consiste en diversos casos, cada uno con una palabra con entre 1 y 100 letras minúsculas.

Salida

Para cada caso, escribid el número de subsecuencias estrictamente crecientes de al menos dos letras contenidas en la palabra. Ese número siempre será menor que 109.

Public test cases
  • Input

    arroz
    petate
    az
    za
    t
    aaaa
    abcdefghij
    abcdefghijabcdefghijabcdefghijabcdefghij
    aaaaaaaaaabbbbbbbbbbyyyyyyyyyyzzzzzzzzzz
    

    Output

    10
    6
    1
    0
    0
    0
    1013
    66263
    14600
    
  • Information
    Author
    Salvador Roura
    Language
    Spanish
    Other languages
    English
    Official solutions
    C++
    User solutions
    C++