Cerință
Felicia este interesată de subșirul maxim lexicografic al unui șir de caractere. Rețineți că un șir este considerat mai mic în ordine lexicografică decât un șir dacă este prefix al lui , sau dacă există o poziție pentru care avem , , , și . Astfel, subșirul maxim lexicografic al unui șir de caractere este cel mai mare subșir, în ordinea lexicografică, al unui șir de caractere (de exemplu zzxx
pentru azbxazbxaax
). Pentru un șir de caractere vom nota cu subșirul maxim lexicografic al lui , și cu lungimea acestui subșir.
Felicia vă dă un șir format din caractere mici ale alfabetului englez. Considerați toate subsecvențele continue ale lui . Felicia vrea să calculați suma valorilor pentru toate subsecvențele posibile amintite anterior.
Date de intrare
Pe singura linie citită se va găsi șirul .
Date de ieșire
Să se afișeze suma cerută, modulo .
Restricții
Subtask 1 (20 puncte)
Subtask 2 (10 puncte)
Subtask 3 (20 puncte)
Subtask 4 (20 puncte)
Subtask 5 (30 puncte)
- Fără restricții suplimentare.
Exemplul 1
stdin
cab
stdout
8
Explicație
Observăm că , , , , , . Astfel, răspunsul este
Exemplul 2
stdin
felicia
stdout
59