QOJ.ac

QOJ

Límite de tiempo: 1.0 s Límite de memoria: 256 MB Puntuación total: 100

#18531. 字符串

Estadísticas

给定字符串研究所(RIGS)正在研究一种构建无限字符串的新方法。

最初有一个空字符串 $S_0^{(k)} = \varepsilon$。此后,该字符串的每个新版本都按以下方式创建:

将当前版本的字符串重复 $k$ 次,并在每两个相邻的重复项之间插入一个任意字符。在构建所有版本的过程中,使用的数字 $k$ 必须相同,但插入的字符可以不同。这种构建方式最终会产生一个无限长度的字符串 $S_{\infty}^{(k)}$。

为了便于说明,我们考虑一系列字符串(当 $k = 3$ 时):

$$S_0^{(3)} = \varepsilon \text{(空字符串)}$$ $$S_1^{(3)} = \text{rt} \quad (S_1^{(3)} = \varepsilon \text{ r } \varepsilon \text{ t } \varepsilon)$$ $$S_2^{(3)} = \text{rt x rt r rt}$$ $$S_3^{(3)} = \text{rtxrtrrt a rtxrtrrt r rtxrtrrt}$$ $$\dots$$ $$S_{\infty}^{(3)} = \text{rtxrtrrtartxrtrrtrrtxrtrrtzrtxrtrrtartxrt}\dots$$

给定一个长度为 $n$ 的字符串 $A$,它是 $S_{\infty}^{(k)}$ 的前缀,求使得该条件成立的最小的 $k$。

换句话说,你的任务是找到最小的 $k$,使得可以通过上述方式构建一个字符串 $S_{\infty}^{(k)}$,并让 $A$ 作为它的前缀。

输入格式

每个输入文件包含多个测试用例。输入的第一行包含一个整数 $T$ — 测试用例的数量。接下来的 $T$ 行中,每行描述一个测试用例。测试用例非空,且仅包含小写英文(拉丁)字母。

测试用例的数量不超过 $10^5$。文件中所有测试用例的长度之和不超过 $10^6$。

输出格式

输出文件必须恰好包含 $T$ 行。每行必须包含对应测试用例的最小 $k$ 值。

样例

输入样例 1

2
abacabab
rtxrtrrtartxrtrrtrrtxrt

输出样例 1

2
3

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.