#P15965. [Roi2014 Team]游戏

[Roi2014 Team]游戏

题目描述

Petya 收到了一款单人卡牌游戏“礼炮”。牌堆中有 nn 张牌,每张牌上写着 11mm 的一个整数。

游戏开始时,牌堆被打乱,玩家拿起牌堆顶部的 kk 张牌。任意时刻手牌数量不能超过 kk。玩家可以进行三种操作:

  1. 丢弃手中的任意一张牌,该牌不能再使用;
  2. 若牌堆中还有牌,且手牌数严格小于 kk,可以摸牌堆顶部一张牌;
  3. 从手中打出一张牌。若该牌数字为 xx,只有当玩家已经打出了 1,2,,x11,2,\ldots,x-1,且还没有打出 xx 时,才能打出它。

游戏在无法进行任何操作时结束。目标是尽可能多地打出牌。

Petya 偷看到了牌堆顺序,请你求他最多能打出多少张牌。

输入格式

输入包含多个测试。第一行一个整数 TT,表示测试组数。

每组测试两行:

第一行三个整数 n,m,kn,m,k

1n,m105,1kn.1\le n,m\le 10^5,\quad 1\le k\le n.

第二行 nn 个整数 aia_i,表示牌堆从上到下的顺序。

1aim.1\le a_i\le m.

保证所有测试中 nn 的总和不超过 10510^5

输出格式

对每组测试,输出一行一个整数,表示最多能打出的牌数。

样例

样例输入

3
4 3 1
3 2 1 2
1 2 1
2
5 5 2
4 2 1 4 3

样例输出

2
0
4

样例说明

第三组中,初始手牌为 42。先丢弃 4,摸到 1,随后打出 12。然后摸到 4,再摸到 3,最后打出 34