大家好,我是ЭНТДЖЕЙ,今天是我2026年第八次正式发题解!
2026年发布的题解!
能不能点个赞
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
回归正题:
* 首先:
* 理解题意:
* 农夫约翰出门沿着一条路散步,现在他可能迷路了!
这条路上有 N 个农场(1 ≤ N ≤ 100),排成一排。不幸的是,农场没有门牌号,这让农夫约翰很难确定自己在这条路上的位置。不过,每个农场路边都有一个彩色的邮箱,所以农夫约翰希望,通过观察离他最近的邮箱的颜色,他能唯一确定自己的位置。
每个邮箱的颜色由 A..Z 范围内的一个字母表示,因此整条路上 N 个邮箱的颜色序列可以用一个长度为 N 的字符串表示(只包含大写字母)。有些邮箱的颜色可能相同。
农夫约翰想知道:最小的 K 是多少,使得当他观察任意 连续 K 个邮箱 的颜色序列时,都能唯一确定这个序列在整条路上的位置。
例如,假设路上邮箱的颜色序列是 "ABCDABC"。
农夫约翰不能取 K=3,因为如果他看到 "ABC",这条路上有两个可能的位置对应这个连续的颜色序列。
能让这个条件成立的最小的 K 是 4,因为如果观察任意连续 4 个邮箱的颜色序列,这个序列都能唯一确定他在路上的位置。
输入格式
第一行输入一个整数 N。
第二行输入一个长度为 N 的字符串,字符范围 A..Z。
输出格式
输出一个整数,表示满足条件的最小的 K。
* 接着
* 我想到用暴力枚举写,结果AC了
* 真题思路就是先输入,在确定长度lenlenlen,然后暴力枚举所有点的长度为lenlenlen的字符串,在暴力枚举其他所有点的长度为lenlenlen的字符串,判断是否一样
* 然后
* 直接写:
* 头文件打好:
* 定义+输入:
* 暴力判断 + 输出:
* 最后
* 完整代码
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
🎉完结撒花🎉
改风格了