#797. [CZOJ 一周一测 R8 C] 所以平面图怎么造?

[CZOJ 一周一测 R8 C] 所以平面图怎么造?

题目背景

如果出题人会生成平面图的话,这题就应该换题了。

题目描述

已知五个实数 a,b,c,d,ea, b, c, d, e,把它们两两相加可以得到 1010 个数。现将 1010 个数打乱重排,求原来的五个数。

如有多解,输出任意一种。温馨提示:请谨慎输出你的答案,防止爆精度而导致获得较低分。

输入格式

本题有多组数据。

第一行,一个整数 TT,表示数据组数。

接下来 TT 行,每行 1010整数,表示 1010 个和。注意,他们可能相同。

输出格式

输出共 TT 行,每行 55 个数,表示你所找到的一组解。

如无解,输出一行五个数 0\bm 0 即可。

样例

10
2 3 4 5 6 4 5 6 7 8
20 33 35 35 37 37 39 50 52 54
16 14 16 18 16 17 16 19 17 19
16 14 16 16 18 16 18 16 18 16
13 13 13 13 14 14 14 14 14 14
18 19 19 20 20 20 20 21 21 22
-2 -2 -2 -2 -2 -2 -2 -2 -2 -2
1 2 3 4 5 6 7 8 9 11
12389 42312 4321 31289 31289 32145 3248 12389 23 0
0 23 10190 28897 3248 13415 32122 13438 32145 42312
0.5 1.5 2.5 3.5 4.5
9 11 24 26 28
7 7 9 9 10
7 7 9 9 9
7 7 6 7 7
11 11 9 9 10
-1 -1 -1 -1 -1
0 1 2 4 7
0 0 0 0 0
-1612.5 1612.5 1635.5 11802.5 30509.5

样例解释

对于第一组数据,

  • 0.5+1.5=20.5 + 1.5 = 2
  • 0.5+2.5=30.5 + 2.5 = 3
  • 0.5+3.5=1.5+2.5=40.5 + 3.5 = 1.5 + 2.5 = 4
  • 0.5+4.5=1.5+3.5=50.5 + 4.5 = 1.5 + 3.5 = 5
  • 1.5+4.5=2.5+3.5=61.5 + 4.5 = 2.5 + 3.5 = 6
  • 2.5+3.5=72.5 + 3.5 = 7
  • 3.5+4.5=83.5 + 4.5 = 8

对于第二组数据,

  • 9+11=209 + 11 = 20
  • 9+24=339 + 24 = 33
  • 9+26=11+24=359 + 26 = 11 + 24 = 35
  • 9+28=11+26=379 + 28 = 11 + 26 = 37
  • 11+28=3911 + 28 = 39
  • 24+26=5024 + 26 = 50
  • 24+28=5224 + 28 = 52
  • 26+28=5426 + 28 = 54

数据规模与约定

本题开启捆绑测试。

  • Subtask 0(13 pts):T=1T = 1
  • Subtask 1(14 pts):存在解使得至少有两个数相同。
  • Subtask 2(28 pts):输入的所有和的绝对值不超过 1010
  • Subtask 3(45 pts):无特殊限制。

对于 100%100 \% 的数据,保证 1T1051 \leq T \leq 10^52×108a2×108-2\times10^8 \leq \forall a \leq 2\times10^8数据保证若有解,则存在一组解的值域在 [108,108]\bm{[-10^8, 10^8]} 之间且小数点后不超过 1010。如果你的输出中任何一个数不在 [108,108][-10^8, 10^8] 之间,可能会出现奇妙的错误。