CF1330A Dreamoon and Ranking Collection

题目描述

Dreamoon 热衷于参加 Codeforces 竞赛。 一天,他声称自己再参加两场 rated 场后,就会获得过从第 $1$ 名到第 $54$ 名的所有名次。这真是不可思议! 基于此,你提出了如下一个问题: 张三参加了 $n$ 场 Codeforces 比赛。他第一场的排名为 $a_1$,第二场的排名为 $a_2$,……,第 $n$ 场的排名为 $a_n$。 给出一个正整数 $x$。请找到最大的 $v$,满足张三在再参加 $x$ 场 rated 比赛后,有可能取得 $1$ 到 $v$ 中所有名次。 换句话说,你需要找到最大的 $v$,满足在继续参加 $x$ 场 rated 比赛后,有可能对于任意的 $1 \le i \le v$,存在一场张三排在第 $i$ 名的比赛。 举个例子,如果 $n = 6, x = 2, a = [3, 1, 1, 5, 7, 10]$,那么答案 $v = 5$。因为如果接下来的两次比赛内,张三分别取得了第 $2$ 名和第 $4$ 名,他可以获得过第 $1$ 名到第 $5$ 名内的所有名次,所以 $v = 5$ 是可能达成的最大答案。 对于第二组测试数据,张三将会再参加 $100$ 场比赛,他可以以任意顺序取得第 $1, 2, \ldots, 99$ 和 $101$ 名,就获得过第 $1, 2, \ldots, 101$ 名中的所有名词。

输入格式

第一行输入一个整数 $t ~ (1 \le t \le 5)$,表示测试数据组数。 对于每组测试数据,输入两行。 第一行输入两个整数 $n, x ~ (1 \le n, x \le 100)$。 第二行输入 $n$ 个正整数 $a_1, a_2, \ldots, a_n ~ (1 \le a_i \le 100)$。

输出格式

对于每组测试数据,输出一行一个整数 $v$,表示在再参加 $x$ 次比赛后,有可能实现对于所有 $1 \le i \le v$,存在一场比赛张三排在第 $i$ 名。

说明/提示

The first test case is described in the statement. In the second test case, the person has one hundred future contests, so he can take place $ 1,2,\ldots,99 $ and place $ 101 $ on them in some order, to collect places $ 1,2,\ldots,101 $ .