恢复三个数字
Submit solution
Points:
10
Time limit:
1.0s
Memory limit:
4M
Author:
Problem type
Allowed languages
C++
恢复三个数字
Polycarp 猜测了三个正整数 \(a\),\(b\) 和 \(c\)。他将这三个数字保密,但在黑板上写下了四个数字,这四个数字是:
任意两数之和(共 \(3\) 个数字)
三个数的总和(共 \(1\) 个数字)
因此,黑板上显示的 \(4\) 个数字是:
\(a + b\)
\(a + c\)
\(b + c\)
\(a + b + c\)
这些数字的顺序是随机的。
你的任务是根据这 \(4\) 个数字,推断出原始的 \(3\) 个数字 \(a\)、\(b\)、\(c\),并按任意顺序输出它们。
请注意:
\(a\)、\(b\) 和 \(c\) 可能相等(例如 \(a=b=c\))。
输入
输入的第一行包含 \(4\) 个正整数 \(x_1,x_2,x_3,x_4\)(\(2 \le x_i \le 10^9\))。 这些数字表示黑板上显示的 \(4\) 个数,顺序是随机的。 题目保证至少存在一个解。
输出
输出 \(3\) 个正整数 a b c
如果有多个解,可以按任意顺序输出。
输入:
3 6 5 4
输出:
2 1 3
输入:
40 40 40 60
输出:
20 20 20
输入:
201 101 101 200
输出:
1 100 100
Comments