CF1760C Advantage

题目描述

有 $n$ 名参赛者,第 $i$ 名参赛者的实力为 $s_i$。 每位参赛者都想知道自己相较于其他最强参赛者有多大优势。换句话说,每位参赛者 $i$ 想知道 $s_i$ 与 $s_j$ 的差值,其中 $j$ 是除 $i$ 以外实力最强的参赛者(差值可以为负数)。 因此,他们向你寻求帮助!对于每个 $i$($1 \leq i \leq n$),输出 $s_i$ 与除自己以外的任意参赛者的最大实力之差。

输入格式

输入包含多组测试数据。第一行包含一个整数 $t$($1 \leq t \leq 1000$),表示测试用例的数量。接下来是每组测试数据的描述。 每组测试数据的第一行包含一个整数 $n$($2 \leq n \leq 2\cdot10^5$),表示数组的长度。 接下来一行包含 $n$ 个用空格分隔的正整数 $s_1, s_2, \ldots, s_n$($1 \leq s_i \leq 10^9$),表示每位参赛者的实力。 保证所有测试用例中 $n$ 的总和不超过 $2\cdot10^5$。

输出格式

对于每组测试数据,输出 $n$ 个用空格分隔的整数。对于每个 $i$($1 \leq i \leq n$),输出 $s_i$ 与除自己以外的任意参赛者的最大实力之差。

说明/提示

对于第一个测试用例: - 第一位参赛者的实力为 $4$,除第一位以外的最大实力为 $7$,所以答案为 $4 - 7 = -3$。 - 第二位参赛者的实力为 $7$,除第二位以外的最大实力为 $5$,所以答案为 $7 - 5 = 2$。 - 第三位参赛者的实力为 $3$,除第三位以外的最大实力为 $7$,所以答案为 $3 - 7 = -4$。 - 第四位参赛者的实力为 $5$,除第四位以外的最大实力为 $7$,所以答案为 $5 - 7 = -2$。 由 ChatGPT 4.1 翻译