P17677 [IO 2025 #4] 现在你看见我了
题目描述
:::epigraph[杰伊·丹尼尔·阿特拉斯]
“靠近些——再靠近些!因为你以为自己看得越多,就越容易被欺骗。”
:::
“四骑士”的最终演出即将开始!他们为这场演出准备了一个此前从未有人见过的魔术。
为了设计这个魔术,“四骑士”将过去演出中使用过的所有技巧记录成了一个字符串 $s$。他们一共掌握 $n$ 种技巧,可在演出中使用。这些技巧用拉丁字母表中的前 $n$ 个小写字母表示;字符串 $s$ 中只出现了其中的一部分技巧,也可能全部出现过。
他们希望新魔术所选用的技巧序列确实是全新的。为此,这个序列不能是 $s$ 的子序列,也就是说,不能通过从 $s$ 中删除一些字符得到这个序列。
与此同时,这个魔术应当尽可能短:序列越短,观众就越难在魔术结束前识破骗局,最终带来的惊喜也就越强。
“四骑士”想找到最小的长度 $k$,使得存在一个由他们掌握的技巧组成、长度为 $k$ 的序列,并且这个序列不是 $s$ 的子序列。请帮助他们求出这个长度。
输入格式
第一行包含一个整数 $n$,表示“四骑士”掌握的技巧数量,满足 $1\le n\le26$。
第二行包含一个字符串 $s$,表示过去演出中使用过的技巧序列,满足 $1\le |s|\le10^6$。字符串只包含拉丁字母表中的前 $n$ 个小写字母。
输出格式
输出一行一个整数 $k$,表示由拉丁字母表中的前 $n$ 个小写字母组成、且不是 $s$ 子序列的字符串的最小长度。