Codeforces Round 804 (Div. 2)
E
Three Days Grace
Codeforces
2600
原题
← D→
翻译中…

Ibti was thinking about a good title for this problem that would fit the round theme (numerus ternarium). He immediately thought about the third derivative, but that was pretty lame so he decided to include the best band in the world — Three Days Grace.

翻译中…

You are given a multiset $A$ with initial size $n$, whose elements are integers between $1$ and $m$. In one operation, do the following:

翻译中…
  • select a value $x$ from the multiset $A$, then
  • select two integers $p$ and $q$ such that $p, q \gt 1$ and $p \cdot q = x$. Insert $p$ and $q$ to $A$, delete $x$ from $A$.
翻译中…

Note that the size of the multiset $A$ increases by $1$ after each operation.

翻译中…

We define the balance of the multiset $A$ as $\max(a_i) - \min(a_i)$. Find the minimum possible balance after performing any number (possible zero) of operations.

翻译中…

Input

翻译中…

The first line of the input contains a single integer $t$ ($1 \le t \le 10^5$) — the number of test cases.

翻译中…

The second line of each test case contains two integers $n$ and $m$ ($1 \le n \le 10^6$, $1 \le m \le 5 \cdot 10^6$) — the initial size of the multiset, and the maximum value of an element.

翻译中…

The third line of each test case contains $n$ integers $a_1, a_2, \ldots, a_n$ ($1 \le a_i \le m$) — the elements in the initial multiset.

翻译中…

It is guaranteed that the sum of $n$ across all test cases does not exceed $10^6$ and the sum of $m$ across all test cases does not exceed $5 \cdot 10^6$.

翻译中…

Output

翻译中…

For each test case, print a single integer — the minimum possible balance.

翻译中…

Note

翻译中…

In the first test case, we can apply the operation on each of the $4$s with $(p,q) = (2,2)$ and make the multiset $\{2,2,2,2,2,2,2\}$ with balance $\max(\{2,2,2,2,2,2,2\}) - \min(\{2,2,2,2,2,2,2\}) = 0$. It is obvious we cannot make this balance less than $0$.

翻译中…

In the second test case, we can apply an operation on $12$ with $(p,q) = (3,4)$. After this our multiset will be $\{3,4,2,3\}$. We can make one more operation on $4$ with $(p,q) = (2,2)$, making the multiset $\{3,2,2,2,3\}$ with balance equal to $1$.

翻译中…

In the third test case, we can apply an operation on $35$ with $(p,q) = (5,7)$. The final multiset is $\{6,5,7\}$ and has a balance equal to $7-5 = 2$.

翻译中…

In the forth test case, we cannot apply any operation, so the balance is $5 - 1 = 4$.

翻译中…

样例

Input #1
4
5 10
2 4 2 4 2
3 50
12 2 3
2 40
6 35
2 5
1 5
Output #1
0
1
2
4
InputCopy OutputCopy
题目信息
题号
1699E
时间限制
4 s
内存限制
256 MB
标签
数据结构
动态规划
贪心
数学
数论
双指针

题面与样例版权归 Codeforces 及出题人所有;中文翻译由 AI 生成(CI 管线),如有出入请以原文为准。