570. 气球游戏

小 $Q$ 在进行射击气球的游戏,如果小 $Q$ 在连续 $T$ 枪中打爆了所有颜色的气球,将得到一只 $QQ$ 公仔作为奖励。(每种颜色的球至少被打爆一只)。

这个游戏中有 $m$ 种不同颜色的气球,编号 $1$ 到 $m$。

小 $Q$ 一共有 $n$ 发子弹,然后连续开了 $n$ 枪。

小 $Q$ 想知道在这 $n$ 枪中,打爆所有颜色的气球最少用了连续几枪?

输入格式

第一行包含两个整数 $n$ 和 $m$。

第二行包含 $n$ 个整数,分别表示每一枪打中的气球的颜色,$0$ 表示没打中任何颜色的气球。

输出格式

一个整数表示小 $Q$ 打爆所有颜色气球用的最少枪数。

如果小 $Q$ 无法在这 $n$ 枪打爆所有颜色的气球,则输出 $-1$。

数据范围

$1 \le n \le 10^6$,
$1 \le m \le 2000$

输入样例:

12 5
2 5 3 1 3 2 4 1 0 5 4 3

输出样例:

6

样例解释

有五种颜色的气球,编号 $1$ 到 $5$。

游客从第二枪开始直到第七枪,这连续六枪打爆了 5 3 1 3 2 4 这几种颜色的气球,包含了从 $1$ 到 $5$ 的所有颜色,所以最少枪数为 $6$。