#CF2101C. 王国

    ID: 6682 传统题 1000ms 256MiB 尝试: 1 已通过: 1 难度: 1 上传者: 标签>数据结构二分搜索蛮力贪婪三元搜索两分*2200

王国

C. 23 王国

每个测试的时间限制: 44
内存限制: 256256 兆字节


题目描述

对于数组 cc 中的某个值 xx,其距离 dx(c)d_x(c) 定义为 xxcc 中任意两次出现之间的最大间隔。

形式化地说,
设所有满足 i<ji < jci=cj=xc_i = c_j = x 的数对 (i,j)(i, j),定义
[ d_x(c) = \max (j - i) ]
如果 xxcc 中只出现一次或未出现,则 dx(c)=0d_x(c) = 0

一个数组的美丽值定义为数组中每个不同值的距离之和。
形式化地说,数组 cc 的美丽值为: [ \sum_{1 \le x \le n} d_x(c) ]


给定一个长度为 nn 的数组 aa
一个数组 bb 被称为nice,如果它也满足:

  • 长度为 nn
  • 对于所有 1in1 \le i \le n,有 1biai1 \le b_i \le a_i

你的任务是:在所有可能的 nice 数组 bb 中,找出最大可能的美丽值


输入格式

第一行包含一个整数 tt1t1041 \le t \le 10^4)—— 测试用例的数量。

接下来每个测试用例:

  • 第一行包含一个整数 nn1n2×1051 \le n \le 2 \times 10^5)—— 数组 aa 的长度。
  • 第二行包含 nn 个整数 a1,a2,,ana_1, a_2, \dots, a_n1ain1 \le a_i \le n)。

数据保证所有测试用例的 nn 之和不超过 2×1052 \times 10^5


输出格式

对于每个测试用例,输出一个整数,表示所有 nice 数组 bb 中最大可能的美值。


示例

输入

4
4
1 2 1 2
2
2 2
10
1 2 1 5 1 2 2 1 1 2
8
1 5 2 8 4 1 4 2

输出

4
1
16
16

样例解释

第一个测试用例

如果取 b=[1,2,1,2]b = [1, 2, 1, 2]
d1(b)=31=2d_1(b) = 3 - 1 = 2d2(b)=42=2d_2(b) = 4 - 2 = 2
美丽值为 2+2=42 + 2 = 4。可以证明没有比 44 更大的值。

第二个测试用例

b=[1,1]b = [1, 1]b=[2,2]b = [2, 2] 都可行,美丽值为 11

第三个测试用例

b=[1,2,1,4,1,2,1,1,1,2]b = [1, 2, 1, 4, 1, 2, 1, 1, 1, 2]
d1(b)=91=8d_1(b) = 9 - 1 = 8d2(b)=102=8d_2(b) = 10 - 2 = 8d4(b)=0d_4(b) = 0
美丽值为 8+8=168 + 8 = 16