Cadena especial

Se considera que una cadena es "especial" si cumple una de dos condiciones:

  • Todos los caracteres son iguales (p. ej., "aaa").
  • Todos los caracteres, excepto el del medio, son iguales (p. ej., "aadaa").

Una subcadena especial es cualquier subcadena de una cadena que cumple uno de esos criterios. Dada una cadena, determina cuántas subcadenas especiales se pueden formar a partir de ella.

Dada la cadena s = "mnonopoo", tenemos las siguientes subcadenas especiales:

{ "m", "n", "o", "n", "o", "p", "o", "o", "oo", "non", "ono", "opo" }

Solo tienes que devolver la cantidad total de esas subcadenas especiales. En este caso, es 12. Otro ejemplo es s = "aaaa", por lo que las subcadenas serán:

{ "a", "a", "a", "a", "aa", "aa", "aa", "aaa", "aaa", "aaaa" }
# The function will return 10

Ejemplos

special_string("mnonopoo") ➞ 12

special_string("asasd") ➞ 7

special_string("aaaa") ➞ 10

Notas

N/A