题目
Farmer John 的奶牛正在 mooZ
视频会议平台上举行每日集会。
她们发明了一个简单的数字游戏,为会议增添一些乐趣。
Elsie 有三个正整数 A、B 和 C (A≤B≤C)。
这些数字是保密的,她不会直接透露给她的姐妹 Bessie。
她告诉 Bessie 七个范围在 $1…10^9$之间的整数(不一定各不相同),并宣称这是 A、B、C、A+B、B+C、C+A 和 A+B+C 的某种排列。
给定这七个整数,请帮助 Bessie 求出 A、B 和 C。
可以证明,答案是唯一的。
输入格式
输入一行,包含七个空格分隔的整数。
输出格式
输出 A、B和 C,用空格分隔。
数据范围
$1≤所有输入的整数≤10^9$1
输入样例:
2 2 11 4 9 7 9
输出样例:
2 2 7
思路
核心的思想就是:
假设$a,b$都为正整数,那么$a<a+b同时b<a+b$
所以思路就出来了,只需要对于这七个数进行排序,然后最大的数减去最小的两个数结果为$N$,其中最小的两个数以及$N$一定是$A,B,C$,然后对于这三个数进行排序,就求出结果了($A<=B<=C$)
代码
import java.util.*;
public class Main
{
static int[] a = new int[10];
public static void main(String[] args) {
Scanner inScanner = new Scanner(System.in);
for(int i = 1; i <= 7; i ++)
a[i] = inScanner.nextInt();
Arrays.sort(a, 1, 8);
System.out.printf("%d %d %d", a[1], a[2], a[7] - a[1] - a[2]);
inScanner.close();
}
}