CF1092B Teams Forming
题目描述
某大学有 $n$ 名学生,且 $n$ 为偶数。第 $i$ 名学生的编程能力为 $a_i$。
教练希望组建 $\frac{n}{2}$ 支队伍。每支队伍应由恰好两名学生组成,且每名学生只能属于一支队伍。只有当两名学生的能力值相等时,他们才能组队(否则他们无法相互理解,无法组队)。
学生可以通过解题来提升能力。每解决一道题,能力值增加 $1$。
教练想知道,为了恰好组建 $\frac{n}{2}$ 支队伍(即每两名学生组成一队),学生们最少需要总共解多少道题。你的任务是求出这个最小值。
输入格式
输入的第一行包含一个整数 $n$($2 \le n \le 100$),表示学生人数。保证 $n$ 为偶数。
第二行包含 $n$ 个整数 $a_1, a_2, \dots, a_n$($1 \le a_i \le 100$),其中 $a_i$ 表示第 $i$ 名学生的能力值。
输出格式
输出一个整数,表示学生们为组建 $\frac{n}{2}$ 支队伍最少需要解的题目总数。
说明/提示
在第一个样例中,最优分组为:$(3, 4)$、$(1, 6)$ 和 $(2, 5)$,括号内为学生编号。组建第一队时,第 $3$ 名学生需解 $1$ 道题,组建第二队时无人需解题,组建第三队时第 $2$ 名学生需解 $4$ 道题,因此答案为 $1 + 4 = 5$。
在第二个样例中,第 $1$ 名学生需解 $99$ 道题才能与第 $2$ 名学生组队。
由 ChatGPT 4.1 翻译