#CF1760C. Advantage

    ID: 6827 传统题 1000ms 256MiB 尝试: 3 已通过: 1 难度: 10 上传者: 标签>数据结构模拟排序CodeforcesCodeforces Round 835(Div4)Div4CCF1760C800

Advantage

题目描述

nn 名参赛者,第 ii 名参赛者的实力为 sis_i

每位参赛者都想知道自己相较于其他最强参赛者有多大优势。换句话说,每位参赛者 ii 想知道 sis_isjs_j 的差值,其中 jj 是除 ii 以外实力最强的参赛者(差值可以为负数)。

因此,他们向你寻求帮助!对于每个 ii1in1 \leq i \leq n),输出 sis_i 与除自己以外的任意参赛者的最大实力之差。

输入格式

输入包含多组测试数据。第一行包含一个整数 tt1t10001 \leq t \leq 1000),表示测试用例的数量。接下来是每组测试数据的描述。

每组测试数据的第一行包含一个整数 nn2n21052 \leq n \leq 2\cdot10^5),表示数组的长度。

接下来一行包含 nn 个用空格分隔的正整数 s1,s2,,sns_1, s_2, \ldots, s_n1si1091 \leq s_i \leq 10^9),表示每位参赛者的实力。

保证所有测试用例中 nn 的总和不超过 21052\cdot10^5

输出格式

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

样例

5
4
4 7 3 5
2
1 2
5
1 2 3 4 5
3
4 9 4
4
4 4 4 4
-3 2 -4 -2 
-1 1 
-4 -3 -2 -1 1 
-5 5 -5 
0 0 0 0

样例说明

对于第一个测试用例:

  • 第一位参赛者的实力为 44,除第一位以外的最大实力为 77,所以答案为 47=34 - 7 = -3
  • 第二位参赛者的实力为 77,除第二位以外的最大实力为 55,所以答案为 75=27 - 5 = 2
  • 第三位参赛者的实力为 33,除第三位以外的最大实力为 77,所以答案为 37=43 - 7 = -4
  • 第四位参赛者的实力为 55,除第四位以外的最大实力为 77,所以答案为 57=25 - 7 = -2

由 ChatGPT 4.1 翻译

来源

Codeforces 1760C,英文题名 Advantage。