欢迎光临散文网 会员登陆 & 注册

CF 1726A - Mainak and Array

2023-06-30 15:00 作者:您是打尖儿还是住店呢  | 我要投稿

Mainak has an array a1,a2,…,an of n positive integers. He will do the following operation to this array exactly once:

Pick a subsegment of this array and cyclically rotate it by any amount.

Formally, he can do the following exactly once:

Pick two integers l and r, such that 1≤l≤r≤n, and any positive integer k.

Repeat this k times: set al=al+1,al+1=al+2,…,ar−1=ar,ar=al (all changes happen at the same time).

Mainak wants to maximize the value of (an−a1) after exactly one such operation. Determine the maximum value of (an−a1) that he can obtain.

Input

Each test contains multiple test cases. The first line contains a single integer t (1≤t≤50) — the number of test cases. Description of the test cases follows.

The first line of each test case contains a single integer n (1≤n≤2000).

The second line of each test case contains n integers a1,a2,…,an (1≤ai≤999).

It is guaranteed that the sum of n over all test cases does not exceed 2000.


Output

For each test case, output a single integer — the maximum value of (an−a1)

 that Mainak can obtain by doing the operation exactly once.


Example

input

5

6

1 3 9 11 5 7

1

20

3

9 99 999

4

2 1 8 1

3

2 1 5

output

10

0

990

7

4

Note

In the first test case, we can rotate the subarray from index 3 to index 6 by an amount of 2

 (i.e. choose l=3, r=6 and k=2) to get the optimal array:

[1,3,9,11,5,7–––––––––]⟶[1,3,5,7,9,11–––––––––]

So the answer is an−a1=11−1=10.

In the second testcase, it is optimal to rotate the subarray starting and ending at index 1

 and rotating it by an amount of 2.

In the fourth testcase, it is optimal to rotate the subarray starting from index 1 to index 4

 and rotating it by an amount of 3. So the answer is 8−1=7.

---------------------------

对于每个ai,旋转的话,可以1-i旋转,也可以n-i旋转,这样一个是把ai转到a1的位置,一个是把ai转到an的位置了,但是这里面还有个条件就是可以一直旋转,这样的话,就存在ai ai+1分别在an a1的位置的,所以还要把这种情况考虑进去。

然后就可以AC了;


CF 1726A - Mainak and Array的评论 (共 条)

分享到微博请遵守国家法律