#S30001. 窗口MEX

窗口MEX

问题描述

定义 mex(x1,x2,,xk)\mathrm{mex}(x_1, x_2, \dots, x_k) 为不包含在 x1,x2,,xkx_1, x_2, \dots, x_k 中的最小非负整数。

给定长度为 NN 的整数序列 A=(A1,A2,,AN)A = (A_1, A_2, \dots, A_N)

对于所有满足 0iNM0 \le i \le N - M 的整数 ii,计算 mex(Ai+1,Ai+2,,Ai+M)\mathrm{mex}(A_{i+1}, A_{i+2}, \dots, A_{i+M}),在这 NM+1N - M + 1 个值中,求出最小值。

输入格式

第一行输入两个正整数 N,MN, M

第二行输入 NN 个整数 A1,A2,,ANA_1, A_2, \dots, A_N

输出格式

输出一个整数,表示答案。

样例输入 1

3 2
0 0 1

样例输出 1

1

样例输入 2

3 2
1 1 1

样例输出 2

0

样例输入 3

3 2
0 1 0

样例输出 3

2

样例输入 4

7 3
0 0 1 2 0 1 0

样例输出 4

2

说明

样例 1 解释

  • i=0i = 0mex(0,0)=1\mathrm{mex}(0, 0) = 1
  • i=1i = 1mex(0,1)=2\mathrm{mex}(0, 1) = 2
    最小值为 11

样例 2 解释

  • i=0i = 0mex(1,1)=0\mathrm{mex}(1, 1) = 0
  • i=1i = 1mex(1,1)=0\mathrm{mex}(1, 1) = 0
    最小值为 00

样例 3 解释

  • i=0i = 0mex(0,1)=2\mathrm{mex}(0, 1) = 2
  • i=1i = 1mex(1,0)=2\mathrm{mex}(1, 0) = 2
    最小值为 22

样例 4 解释
所有滑动窗口的 mex\mathrm{mex} 值分别为:

  • i=0i = 0mex(0,0,1)=2\mathrm{mex}(0, 0, 1) = 2
  • i=1i = 1mex(0,1,2)=3\mathrm{mex}(0, 1, 2) = 3
  • i=2i = 2mex(1,2,0)=3\mathrm{mex}(1, 2, 0) = 3
  • i=3i = 3mex(2,0,1)=3\mathrm{mex}(2, 0, 1) = 3
  • i=4i = 4mex(0,1,0)=2\mathrm{mex}(0, 1, 0) = 2
    最小值为 22

评测数据规模

  • 1MN1.5×1061 \le M \le N \le 1.5 \times 10^6
  • 0Ai<N0 \le A_i < N
  • 所有输入均为整数