#714. 变为 awesome

变为 awesome

题目描述

数组 bb 的长度为 mm,若对所有 i (1i<m)i\ (1\le i<m) 都满足:

  • ii 为奇数时,bi<bi+1b_i<b_{i+1}
  • ii 为偶数时,bi>bi+1b_i>b_{i+1}

则称数组 bbawesome。即满足 b1<b2>b3<b4b_1<b_2>b_3<b_4\ldots 的交替关系。

给定长度为 nn 的正整数数组 aa。你可以任意次、按任意顺序执行下列两种操作:

  • 操作 1:选择一个整数 i (1in)i\ (1\le i\le n) 并令 ai:=max(a1,,ai)a_i:=\max(a_1,\dots,a_i),即将 aia_i 替换为其前缀最大值;
  • 操作 2:选择一个整数 i (1in)i\ (1\le i\le n) 并将 aia_i11(即 ai:=ai1a_i:=a_i-1)。

问:在允许任意次执行操作 1 的前提下,使数组 aa 变为 awesome,需要 最少 执行操作 2 的次数是多少?(注意不需要最小化操作 1 的次数,仅最小化操作 2 的总次数。)

输入格式

  • 11 行:一个整数 tt,表示测试用例个数。

  • 接下来对每个测试用例,使用 两行 表示:

    • 11 行:一个整数 nn(数组长度)。
    • 22 行:nn 个整数 a1,a2,,ana_1,a_2,\dots,a_n(用空格分隔)。

输出格式

对每个测试用例输出一行,包含一个整数 —— 使数组 aa 变为 awesome 时所需的最少 操作 2 次数。

样例输入

7
5
1 4 2 5 3
4
3 3 2 1
5
6 6 6 6 6
7
1 2 3 4 5 6 7
3
3 2 1
2
1 2
9
65 85 19 53 21 79 92 29 96

样例输出

0
1
3
6
1
0
13

说明

样例解释

  • 第一个样例:数组已满足交替关系,无需操作 22,答案为 00
  • 第二个样例:对 [3,3,2,1][3,3,2,1],只需一次操作 22(例如把 a1a_1 变为 22),再配合若干次操作 11 可得到 [2,3,2,3][2,3,2,3],此时满足 2<3>2<32<3>2<3,因此最少操作 22 次数为 11

数据范围

  • 1t1041\le t\le 10^4
  • 对每个测试用例,2n21052\le n\le 2\cdot10^5
  • 1ai1091\le a_i\le 10^9
  • 所有测试用例中 n2105\sum n\le 2\cdot10^5