A1822.安排

入门

官方

通过率:0%

时间限制:1.00s

内存限制:128MB

题目描述

ACAC 狗是一名跳高教练,它面前有 nn 名跳高远动员,将运动员从左到右 11nn 编号,ACAC 狗知道每一位运动员的力量值 sis_i1in1 \le i \le n)。

现在需要将运动员们分成两队去参加比赛,每一队至少有一名运动员,并且每个运动员都必须分到其中一个队中。

ACAC 狗希望第一队中最强的运动员(力量值最大)与第二队中最弱的运动员(力量值最小)之间的力量值差异尽可能小。
从形式上讲,它希望将运动员分为 AA 队和 BB 队,以便使 max(A)min(B)|max(A) - min(B)| 尽可能小。

例如: n=5n = 5,运动员的力量值是 s=[3,1,2,6,4]s = [3,1,2,6,4],那么其中一种分队的方法是:

  • 第一队:A=[1,2,4]A = [1,2,4]
  • 第二队:B=[3,6]B = [3,6]

在这种情况下,max(A)min(B)|max(A) - min(B)| = 43|4-3| = 11,这是最佳的分法之一。

给定 nn 和每一位运动员的力量值,请你帮 ACAC 狗安排最佳的分法,输出最小的 max(A)min(B)|max(A) - min(B)|

输入格式

第一行包含一个整数 TT (1T10001 \le T \le 1000) — 表示测试用例的数量。

每个测试用例由两行组成。

第一行包含正整数 nn(2n502 \le n \le 50) — 运动员人数。

第二行包含 nn 个正整数 s1s_1 ~ sns_n1si10001 \le s_i \le 1000)。

输出格式

对于每个测试用例打印一个整数 — 最小的 max(A)min(B)|max(A) - min(B)|

输入输出样例

  • 输入#1

    5
    5
    3 1 2 6 4
    6
    2 1 3 2 4 3
    4
    7 9 3 1
    2
    1 1000
    3
    100 150 200

    输出#1

    1
    0
    2
    999
    50

说明/提示

在第二个测试用例中,最佳分法之一是

  • A=[2,1],B=[3,2,4,3]A = [2,1],B = [3,2,4,3]

所以答案是max(A)min(B)|max(A) - min(B)| = 22=0|2-2| = 0

首页