Menu
CoddyTech

Longest Repeating Character Replacement

Recibes una cadena s de letras mayúsculas del inglés y un entero k. Puedes elegir como máximo k posiciones de s y cambiar la letra de cada una por cualquier otra letra mayúscula.

Devuelve la longitud de la subcadena más larga, una secuencia de letras contiguas, que contiene una sola letra repetida después de tus cambios.

Función

characterReplacement(s: string, k: integer) → integer
sstring
la cadena de letras mayúsculas
kinteger
la mayor cantidad de letras que puedes cambiar
Devuelveinteger
la longitud de la subcadena más larga que puedes formar con una letra repetida

Restricciones

  • 1 ≤ s.length ≤ 5 × 104
  • s contiene únicamente letras inglesas mayúsculas.
  • 0 ≤ k ≤ s.length

Ejemplos

Entrada
s = "BAAACAB"k = 1
Salida
5
Explicación
Cambiar la C por A hace que los índices del 1 al 5 muestren AAAAA. Ambas ventanas de seis letras contienen una B y la C, así que necesitan dos cambios.
challenge icon

Para ir más allá

¿Qué cambia si s puede contener cualquier carácter en lugar de las 26 letras mayúsculas?

Restablecer código
def characterReplacement(s, k):
    # Escribe el código aquí

Prueba #1

Prueba #2

Prueba #3

Argumentos

s = "BAAACAB"
k = 1

Salida Esperada

5