CF2108F.Fallen Towers

省选/NOI-

通过率:0%

AC君温馨提醒

该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。

题目描述

Pizano 建造了一个由 nn 座高塔组成的数组 aa,每座高塔由 ai≥0a_i \ge 0 个方块组成。

Pizano 可以推倒一座高塔,使得接下来的 aia_i 座高塔各增加 11 个方块。换句话说,他可以选取元素 aia_i,将接下来的 aia_i 个元素各加 11,然后将 aia_i 设为 00。如果推倒的高塔方块数超出数组范围,则这些方块会消失。如果 Pizano 推倒一座 00 方块的高塔,则不会发生任何变化。

Pizano 希望以任意顺序推倒所有 nn 座高塔,每座高塔恰好被推倒一次。也就是说,对于每个 ii 从 11 到 nn,他将恰好推倒位置 ii 的高塔一次。

此外,最终的高塔高度数组必须是非递减的。这意味着在他推倒所有 nn 座高塔后,对于任意 i<ji < j,位置 ii 的高塔高度不能超过位置 jj 的高塔高度。

你需要输出最终高塔高度数组的最大 MEX\text{MEX} 值。

MEX\text{MEX} 是指数组中缺失的最小非负整数。

输入格式

每个测试包含多个测试用例。第一行包含测试用例的数量 tt(1≤t≤1041 \le t \le 10^4)。接下来是测试用例的描述。

每个测试用例的第一行包含一个整数 nn(1≤n≤1051 \leq n \leq 10^5)——高塔的数量。

每个测试用例的第二行包含 nn 个整数——高塔的初始高度 a1,…,ana_1, \ldots, a_n(0≤ai≤1090 \leq a_i \leq 10^9)。

保证所有测试用例的 nn 之和不超过 10510^5。

输出格式

对于每个测试用例,输出一个整数——最终数组的最大 MEX\text{MEX} 值。

输入输出样例

  • 输入#1

    8
    2
    1 2
    4
    2 1 0 0
    10
    5 9 3 7 1 5 1 5 4 3
    10
    1 1 1 1 1 1 1 1 1 1
    10
    3 2 1 0 3 2 1 0 3 2
    5
    5 2 0 5 5
    1
    1000000000
    7
    4 0 1 0 2 7 7

    输出#1

    2
    3
    7
    4
    5
    4
    1
    3

说明/提示

第一个测试用例的解释:

第二个测试用例的解释:注意所有高塔都被恰好推倒一次,且最终的高度数组是非递减的。

翻译由 DeepSeek V3 完成

输入解题思路,AI测评打分。不知道怎么写?

首页