Editorial for Ifri y la string.
Submitting an official solution before solving the problem yourself is a bannable offence.
Subtarea 
 (
)
Ya que  es pequeño, es posible realizar una búsqueda exhaustiva en las posiciones restantes. Dado que ir por todos 
los subconjuntos toma 
 y la cantidad de veces que se realiza la operacion 3 puede calcularse en 
, la 
complejidad total es de 
.
Subtarea 
 (
)
Ahora que  es mayor, la búsqueda exhaustiva no es viable, por lo que reduciremos el problema a encontrar la longitud 
mínima de una subcadena que contiene una cadena 
 de nivel 
 como subsecuencia. Para ello fijaremos el extremo 
izquierdo, lo cual nos permite hacer este cáculo en 
. Teniendo en cuenta que solo hay 
 opciones para el extremo
izquierdo, la complejidad total es de 
.
Subtarea 
 (
)
Sin restricciones adicionales nuestra solucion en  se queda corta. ¿Podemos aprovechar las características de una
cadena 
 de nivel 
 para acelerar el cálculo del extremo derecho? Resulta que si. Primero fijaremos el extremo izquierdo
y, a partir de ahi, utilizaremos el metodo de dos punteros para calcular las posiciones del 
-ésimo caracter a partir 
de él en 
. Haremos esto para cada letra. Teniendo esto, podemos calcular el extremo derecho en 
, con lo cual la 
complejidad final termina siendo 
.
Comments