AT_abc443_d [ABC443D] Pawn Line

题目描述

有一个 $N \times N$ 的网格,每一列上都放有一个棋子。 第 $i$ 列的棋子放在从顶部数起第 $R_i$ 行。 你可以进行如下操作若干次(可以为零次): - 选择一个不在最顶行的棋子,将该棋子移动到其正上方的格子。 请你求出,为了满足以下条件,对所有满足 $1 \le i \le N-1$ 的整数 $i$,最少需要操作多少次: - 设第 $i$ 列的棋子在从上往下第 $x$ 行,第 $i+1$ 列的棋子在从上往下第 $y$ 行,则 $|x-y| \le 1$。 给定 $T$ 组测试数据,请分别求解。

输入格式

输入从标准输入读入,格式如下: > $T$ > 第 1 组数据: $N\quad R_1\quad R_2\quad \dots\quad R_N$ > 第 2 组数据: $N\quad R_1\quad R_2\quad \dots\quad R_N$ > $\vdots$ > 第 $T$ 组数据: $N\quad R_1\quad R_2\quad \dots\quad R_N$

输出格式

输出 $T$ 行。 第 $i$ 行输出第 $i$ 组测试数据的答案。

说明/提示

## 样例解释 1 该输入含有五组测试数据。 对于第一组数据,可以依次进行如下操作,使得题目条件成立且操作次数最少,为 4 次: - 将第 5 列的棋子上移一格,此时各列棋子所在行为 $5,2,1,3,3$。 - 将第 1 列的棋子上移一格,此时各列棋子所在行为 $4,2,1,3,3$。 - 将第 1 列的棋子再上移一格,此时各列棋子所在行为 $3,2,1,3,3$。 - 将第 4 列的棋子上移一格,此时各列棋子所在行为 $3,2,1,2,3$。 对于第二组数据,已经满足条件,无需操作。 ## 约束条件 - 所有输入值均为整数。 - $1 \le T \le 50000$ - $2 \le N \le 3 \times 10^5$ - $1 \le R_i \le N$ - 所有测试数据中 $N$ 的总和不超过 $3 \times 10^5$。 由 ChatGPT 5 翻译