#P10810. 【MX-S2-T1】变

【MX-S2-T1】变

题目描述

已知一个仅由小写英文字母构成的字符串 ss

每次操作时,你可以任意选择 ss 中的一个字符,并将它修改为任意小写英文字母。

你可以按任意顺序对其进行不超过 kk 次操作,以最小化 ss严格循环节的长度。当然,不进行操作也是可以的。

请输出在进行完所有操作后,最小的可能的 ss 的严格循环节的长度。

一个字符串 tt 被称为 ss 的严格循环节,当且仅当 ss 可以通过将 tt 重复若干次来构造。

例如:maimaimai 的严格循环节,dxdx 的严格循环节。但 ov 不是 ovo 的严格循环节。

输入格式

第一行一个非负整数 kk

第二行一个字符串 ss,仅包含小写英文字母。

输出格式

一行一个整数,表示答案。

1
test

4

3
test

1

3
apollo

3

提示

【样例解释 #1】

可以证明:最多进行一次操作的情况下,严格循环节长度至少为 44

【样例解释 #2】

可以通过 33 次操作,将 test 修改为 ssss,严格循环节长度为 11

【数据范围】

本题采用捆绑测试。

  • Subtask 0(17 pts):k=0k = 0s6|s| \leq 6
  • Subtask 1(14 pts):k=1k = 1s20|s| \leq 20
  • Subtask 2(16 pts):k=1k = 1s500|s| \leq 500
  • Subtask 3(32 pts):k<s105k < |s| \leq 10^5
  • Subtask 4(21 pts): 无特殊限制。

对于所有测试数据,保证 0k<s1060 \leq k < |s| \leq 10^6ss 中仅包含小写英文字母。

2024.7.28:新增了一组 Hack 数据。