AT_abc299_c [ABC299C] Dango
题目描述
对于正整数 $L$,满足以下条件的字符串被称为“等级 $L$ 的团子字符串”:
- 是由 `o` 和 `-` 组成的长度为 $L+1$ 的字符串。
- 首尾字符中恰好有一个是 `-`,其余 $L$ 个字符全为 `o`。
例如,`ooo-` 是等级 $3$ 的团子字符串,但 `-ooo-`、`oo`、`o-oo-` 等都不是(更准确地说,不存在任何正整数 $L$ 使它们成为等级 $L$ 的团子字符串)。
给定一个只包含 `o` 和 `-` 的长度为 $N$ 的字符串 $S$。请你求出满足以下条件的最大正整数 $X$:
- 存在 $S$ 的某个连续子串,它是等级 $X$ 的团子字符串。
如果不存在这样的整数,则输出 `-1`。
输入格式
输入从标准输入中按以下格式给出。
> $N$ $S$
输出格式
请输出 $S$ 中包含等级 $X$ 的团子字符串的最大 $X$。如果不存在这样的 $X$,请输出 `-1`。
说明/提示
### 限制条件
- $1\leq N\leq 2\times 10^5$
- $S$ 是由 `o` 和 `-` 组成的长度为 $N$ 的字符串。
### 样例解释 1
例如,$S$ 的第 $3$ 到第 $7$ 个字符组成的子串 `oooo-` 是等级 $4$ 的团子字符串。$S$ 的所有子串中不存在等级 $5$ 或更高的团子字符串,因此输出 $4$。
### 样例解释 2
$S$ 的所有连续子串只有空串和 `-` 这两种。它们都不是团子字符串,因此输出 `-1`。
由 ChatGPT 4.1 翻译