Problema número 449

Trim

Tiempo máximo: 1,000-2,000 sMemoria máxima: 4096 KiB

Muchos lenguajes de programación proporcionan, a través de sus bibliotecas, la función trim(), que recibe una cadena de caracteres y devuelve otra tras eliminar, del inicio y del final, todos los espacios.

Algunos lenguajes disponen de una generalización de esa función, en la que el programador proporciona el carácter que se desea eliminar de los extremos, para que no sean obligatoriamente los espacios. Así, por ejemplo:

trim("lloron", 'l') = "oron"
trim("oron", 'n') = "oro"
trim("oro", 'o') = "r"
trim("r", 'r') = ""

Entrada

El programa deberá procesar múltiples casos de prueba. Cada uno se compondrá de una única palabra (no vacía), de no más de 80 letras minúsculas del alfabeto inglés, escrita en una línea.

Salida

Por cada caso de prueba, el programa escribirá el mínimo número de llamadas a la función trim() generalizada que deberán realizarse de manera reiterada sobre la palabra del caso de prueba para que ésta sea consumida por completo. En cada invocación a trim(), el programa podrá escoger el carácter que considere más adecuado.

Entrada de ejemplo

lloron
baobab
caracola
aceptaelreto

Salida de ejemplo

4
4
6
10