CF2201A1 Lost Civilization (Easy Version)

题目描述

这是本题的简单版本。不同版本的区别在于,在本题中你只需要为一个序列计算一个值。只有在你解决了所有版本的问题后,你才能对其进行 hack。 我们定义一种生成包含 $m+k$ 个整数的算法如下: 1. 首先,输入一个长度为 $m$ 的整数序列 $x$。如果 $k=0$,则直接终止并返回序列 $x$。 2. 然后,选择任意一个下标 $1 \le i \le |x|$,并在元素 $x_i$ 之后插入一个数 $(x_i+1)$。 3. 如果 $x$ 的长度恰好等于 $m+k$,则终止并返回序列 $x$。否则,返回第二步继续操作。 Alice 知道古代文明曾经使用这个算法来安全地隐藏他们的秘密。Alice 想要了解他们所隐藏的知识,但要从算法的输出反推输入并不容易。 给定一个长度为 $n$ 的整数序列 $a$,请你求出通过上述算法可能生成 $a$ 的最短初始序列的长度。

输入格式

每个测试点包含多个测试用例。第一行包含一个整数 $t$($1 \le t \le 10^4$),表示测试用例的数量。 每个测试用例第一行包含一个整数 $n$($1 \le n \le 300\,000$)。 第二行包含 $n$ 个整数 $a_1, a_2, \ldots, a_n$($1 \le a_i \le 10^9$)。 保证所有测试用例中 $n$ 的总和不超过 $300\,000$。

输出格式

对于每个测试用例,输出可能的最短初始序列的长度,每行一个答案。

说明/提示

在第一个测试用例中,序列 $[1]$ 可以通过如下过程生成序列 $a=[1,2,3,4,5]$: $$ [1] \to [1,\color{red}{2}] \to [1,2,\color{red}{3}] \to [1,2,3,\color{red}{4}] \to [1,2,3,4,\color{red}{5}] $$ 在第二个测试用例中,唯一能生成 $a=[1,3,5,7,9]$ 的初始序列只能是 $a$ 本身。 由 ChatGPT 5 翻译