Compartir tecnología

Solución de la pregunta [abreviatura de subcadena] de la 14.ª competición provincial de la Copa Lanqiao CB Grupo G (AC)

2024-07-06

한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina

Insertar descripción de la imagen aquí
Insertar descripción de la imagen aquí
Insertar descripción de la imagen aquí
Insertar descripción de la imagen aquí
Insertar descripción de la imagen aquí
Insertar descripción de la imagen aquí

La idea general del tema.

cadena dada ess,personaje a, b, baa,b, pregunta cadena ess cuantos hay en Automóvil club británicoa comienzo cama y desayunob La subcadena final.

Ideas para resolver problemas

20 puntos

Utilice un bucle doble para enumerar el punto final izquierdo y el punto final derecho para determinar si es Automóvil club británicoa comienzo cama y desayunob La cadena al final es la respuesta más uno.

100 puntos

El rango de datos es grande y necesitamos controlar la complejidad del tiempo dentro de O ( n log ⁡ n ) O(nlog n)Oh(norteorteLogramonorteorte) Dentro de.

fayi

necesitamos encontrar todo Automóvil club británicoa comienzo cama y desayunob final de la cadena, entonces podemos para cada carácter cama y desayunob, ve y mira cama y desayunob ¿Cuántos hay en el lado izquierdo de Automóvil club británicoa, entonces estos a … b puntos bab Es una cadena legal.Cuente cuántos caracteres hay en el lado izquierdo de una determinada posición Automóvil club británicoa, nosotros podemos usarsuma de prefijoEl algoritmo se mantiene.

Método 2

Podemos iterar a través de toda la cadena, para cada Automóvil club británicoa ¿Cuántos personajes hay a la derecha del personaje? cama y desayunob, entonces estos a…ba puntos bab Todas son condiciones legales.Contar caracteres después de una determinada posición. cama y desayunob El número se puede utilizarsuma de sufijoEl algoritmo se mantiene.

#include