QOJ.ac

QOJ

Time Limit: 1 s Memory Limit: 128 MB Total points: 100

#23817. JJOOII

Statistics

Descripción del problema

Mientras practicabas programación para la Ronda Final de la JOI, notaste que la Ronda Preliminar de la JOI de este año solo tenía problemas numéricos y ningún problema de cadenas. Así que decidiste volverte fuerte en secreto en los problemas de cadenas para tomar ventaja sobre tus rivales. Al mirar problemas pasados de la JOI, descubriste que debías acostumbrarte a las cadenas formadas por los $3$ tipos de caracteres J, O e I. Consideremos tales cadenas. Se te ocurrió el problema «Responder si una cadena dada tiene a JOI como subcadena», el cual resolviste de inmediato. Queriendo resolver un problema de mayor nivel, creaste el siguiente problema.

Una cadena $t$ es una subcadena de una cadena $s$ si $s$ puede obtenerse añadiendo cierta cantidad de caracteres ($0$ caracteres también está permitido) al principio y al final de $t$. Por ejemplo, JJOOII es una subcadena de OJJOOIIOJOI. Por otro lado, JOI no es una subcadena de JOOI.

Además, para un entero $k$ mayor o igual que $0$, una cadena-JOI de nivel $k$ es una cadena formada al disponer $k$ caracteres J, $k$ caracteres O y $k$ caracteres I en ese orden. Por ejemplo, JJOOII es una cadena-JOI de nivel $2$.

Queremos encontrar aquella con el nivel máximo entre las cadenas-JOI que son subcadenas de la cadena dada.

Tarea

Dada una cadena $S$ de longitud $N$ formada por los $3$ tipos de caracteres J, O e I, escribe un programa para encontrar el valor máximo de $k$ tal que la cadena-JOI de nivel $k$ sea una subcadena de $S$.

Límites

  • $1 \le N \le 1000000 \ (= 10^6)$: La longitud de $S$.

Entrada

Lee los siguientes datos desde la entrada estándar.

  • En la $1$-ra línea está escrita una cadena $S$ formada por los $3$ tipos de caracteres J, O e I.

Salida

Imprime en la salida estándar en $1$ línea un entero que represente el valor máximo de $k$ tal que la cadena-JOI de nivel $k$ sea una subcadena de $S$.

Subtareas

  • Para el $20\%$ de los puntos en los datos de evaluación, se cumple $N \le 100$.

Ejemplo 1

Entrada

OJJOOIIOJOI

Salida

2

OJJOOIIOJOI contiene a JJOOII, que es la cadena-JOI de nivel $2$, como subcadena, y no contiene ninguna cadena-JOI de nivel $3$ o superior como subcadena.

Ejemplo 2

Entrada

IJJIIJJJ

Salida

0

La cadena-JOI de nivel $0$ es una cadena de longitud $0$.

Ejemplo 3

Entrada

JOIJOIJOIJOIJOI

Salida

1

Ejemplo 4

Entrada

OOJJJJJJOOOOIIIII

Salida

4

Discussions

About Discussions

The discussion section is only for posting: General Discussions (problem-solving strategies, alternative approaches), and Off-topic conversations.

This is NOT for reporting issues! If you want to report bugs or errors, please use the Issues section below.

Open Discussions 0
No discussions in this category.

Issues

About Issues

If you find any issues with the problem (statement, scoring, time/memory limits, test cases, etc.), you may submit an issue here. A problem moderator will review your issue.

Guidelines:

  1. This is not a place to publish discussions, editorials, or requests to debug your code. Issues are only visible to you and problem moderators.
  2. Do not submit duplicated issues.
  3. Issues must be filed in English or Chinese only.
Active Issues 0
No issues in this category.
Closed/Resolved Issues 0
No issues in this category.