圣诞节即将来临,Bajtazar 决定买一个新的装饰品来装饰他的房子。今年他想走极简主义路线,购买一条由绿色和红色两种颜色灯泡组成的链子。于是他去了附近的一家灯具店,请店主向他展示双色链子。
不幸的是,在各种 Bajtocki 岗位上工作多年,使得 Bajtazar 对每个(即使是最琐碎的)话题都有自己的看法,并且毫不犹豫地表达出来(即使没人听)。在时尚和审美方面,他有根深蒂固的观点,这对于所有曾经接待过 Bajtazar 并听他抱怨所展示的商品不完全符合他心意的店主来说,尤其令人头疼。
这次也是如此:Bajtazar 长时间盯着展示给他的链子看,然后断言:“原则上它还可以,但整体美感被破坏了,因为链子里没有任何一个四灯片段的颜色是红-绿-绿-红。”由于店主没有其他链子,他决定改变其中一个灯泡的颜色,以便上述片段出现在链子中。
Bajtazar 满意地点了点头,但过了一会儿又说,现在还缺少一个颜色为绿-红-绿-绿-红的片段。店主又换了一个灯泡,Bajtazar 说这虽然很美,但由于配色原因,还缺少另一个重要的片段。
尽管 Bajtazar 在解释为什么链子仍然不完美时非常有耐心,但他担心店主改变灯泡颜色的行为相当混乱,未必能迅速达到目的。为了合理化这一过程,他请你编写一个程序,帮助他快速找到破坏他审美感的缺失片段。首先,请为他编写一个程序,找出在给定链子中不存在的最短片段的长度。
输入格式
输入的第一行包含两个整数 $n$ 和 $m$ ($1 \le n \le 100\,000$, $0 \le m \le 10\,000$),用空格隔开,分别表示链子中灯泡的数量和店主进行的颜色更改次数。第二行包含一个由 $n$ 个字符组成的字符串,字符为 $0$ 或 $1$,表示链子中灯泡的颜色。
接下来的 $m$ 行包含颜色更改的描述:第 $i$ 行包含一个整数 $a_i$ ($1 \le a_i \le n$),表示店主改变了链子中第 $a_i$ 个灯泡的颜色。
输出格式
输出应包含 $m + 1$ 行:第 $i$ 行应包含一个整数,表示在店主进行了 $i-1$ 次更改后,链子中不存在的由 $0$ 和 $1$ 组成的最短字符串的长度。
样例
输入 1
6 2 001010 6 2
输出 1
2 3 2
说明
在字符串 $001010$ 中,最短的不存在子串是 $11$,长度为 $2$。 改变第六个字符后,得到 $001011$,其中包含了所有长度为 $1$ 和 $2$ 的子串,但不存在例如长度为 $3$ 的子串 $110$。 改变第二个字符后,得到 $011011$,其中不存在子串 $00$。
子任务
| 子任务 | 条件 | 分数 |
|---|---|---|
| 1 | $n, m \le 1000$ | 46 |
| 2 | 无附加条件 | 54 |