编程题
### 问题描述
小然在沙滩上发现了 $N$ 块形状各异的石头。他注意到,通过在某些石头上堆砂,他可以改变这些石头的高度。
他想要将这些石头排成一种特殊的形状,即使得石头阵列的整体形状是对称的。我们称这样的石阵列为“对称石阵”。
小然可以选择任意段连续的石头,然后在这段石头上各堆一堆砂,使得这段石头的高度都增加 $1$。他想知道,他需要最少进行多少次这样的操作,才能将石阵列变为“对称石阵”。
### 输入格式
输入的第一行包含一个整数 $T$,表示测试用例的数量。
每个测试用例由两行组成:
- 第一行包含一个整数 $N$,表示石头的数量。
- 第二行包含 $N$ 个空格分隔的整数 $A_1, A_2, ..., A_N$,表示每块石头的初始高度。
### 输出格式
对于每个测试用例,输出一行一个整数,表示变为“对称石阵”所需的最少操作次数。
### 样例输入
```text
3
6
2 6 4 3 4 1
2
1 10
3
1 10 1
```
### 样例输出
```text
2
9
0
```
### 说明
在第一个测试用例中,我们可以进行以下操作:
1. 选择第 3 到第 6 块石头,进行一次操作,得到的石阵列为 $[2,6,5,4,5,2]$。
2. 选择第 4 到第 5 块石头,进行一次操作,得到的石阵列为 $[2,6,5,5,6,2]$。
总共进行了 2 次操作。
### 评测数据范围
$1 \leq T \leq 10^3$。
$1 \leq N \leq 10^5$。
$1 \leq A_i \leq 10^9$。
所有测试用例中 $N$ 的总和不超过 $3 \times 10^5$。