310881: CF1904C. Array Game

Memory Limit:256 MB Time Limit:2 S
Judge Style:Text Compare Creator:
Submit:0 Solved:0

Description

C. Array Gametime limit per test2 secondsmemory limit per test256 megabytesinputstandard inputoutputstandard output

You are given an array $a$ of $n$ positive integers. In one operation, you must pick some $(i, j)$ such that $1\leq i < j\leq |a|$ and append $|a_i - a_j|$ to the end of the $a$ (i.e. increase $n$ by $1$ and set $a_n$ to $|a_i - a_j|$). Your task is to minimize and print the minimum value of $a$ after performing $k$ operations.

Input

Each test contains multiple test cases. The first line contains an integer $t$ ($1 \leq t \leq 1000$) — the number of test cases. The description of the test cases follows.

The first line of each test case contains two integers $n$ and $k$ ($2\le n\le 2\cdot 10^3$, $1\le k\le 10^9$) — the length of the array and the number of operations you should perform.

The second line of each test case contains $n$ integers $a_1, a_2, \ldots, a_n$ ($1\le a_i\le 10^{18}$) — the elements of the array $a$.

It is guaranteed that the sum of $n^2$ over all test cases does not exceed $4\cdot 10^6$.

Output

For each test case, print a single integer — the smallest possible value of the minimum of array $a$ after performing $k$ operations.

ExampleInput
4
5 2
3 9 7 15 1
4 3
7 4 15 12
6 2
42 47 50 54 62 79
2 1
500000000000000000 1000000000000000000
Output
1
0
3
500000000000000000
Note

In the first test case, after any $k=2$ operations, the minimum value of $a$ will be $1$.

In the second test case, an optimal strategy is to first pick $i=1, j=2$ and append $|a_1 - a_2| = 3$ to the end of $a$, creating $a=[7, 4, 15, 12, 3]$. Then, pick $i=3, j=4$ and append $|a_3 - a_4| = 3$ to the end of $a$, creating $a=[7, 4, 15, 12, 3, 3]$. In the final operation, pick $i=5, j=6$ and append $|a_5 - a_6| = 0$ to the end of $a$. Then the minimum value of $a$ will be $0$.

In the third test case, an optimal strategy is to first pick $i=2, j=3$ to append $|a_2 - a_3| = 3$ to the end of $a$. Any second operation will still not make the minimum value of $a$ be less than $3$.

Output

题目大意:
给定一个由n个正整数组成的数组a。每次操作,你需要选择两个索引(i, j),满足1≤i
输入数据格式:
每个测试包含多个测试用例。第一行包含一个整数t(1≤t≤1000)——测试用例的数量。接下来是每个测试用例的描述。
每个测试用例的第一行包含两个整数n和k(2≤n≤2×10^3,1≤k≤10^9)——数组的长度和你应该执行的操作次数。
每个测试用例的第二行包含n个整数a_1, a_2, ..., a_n(1≤a_i≤10^18)——数组a的元素。
保证所有测试用例的n^2之和不超过4×10^6。

输出数据格式:
对于每个测试用例,打印一个整数——执行k次操作后数组a的最小可能值。题目大意: 给定一个由n个正整数组成的数组a。每次操作,你需要选择两个索引(i, j),满足1≤i

加入题单

上一题 下一题 算法标签: