[COCI2007-2008#3] CETIRI
题目描述
你原本有 4 4 4 个数,它们从小到大排序后构成了等差数列。
但是现在丢失了一个数,并且其余的三个数的顺序也被打乱了。
请你找出第四个数。
输入格式
输入一行三个整数。保证这些数字在 − 100 ∼ 100 -100\sim 100 −100∼100 之间。
输出格式
输出一行一个数,为第四个数。
方案可能不是唯一的,但保证一定存在,本题使用SPJ。
样例 #1
样例输入 #1
4 6 8
样例输出 #1
10
样例 #2
样例输入 #2
10 1 4
样例输出 #2
7
样例 #2
样例输入 #3
7 21 28
样例输出 #3
14
提示说明
说明
题目译自 COCI2007-2008 CONTEST #3 T1 CETIRI。
代码内容
// #include <iostream>
// #include <algorithm>
// #include <cstring>
// #include <stack>//栈
// #include <deque>//队列
// #include <queue>//堆/优先队列
// #include <map>//映射
// #include <unordered_map>//哈希表
// #include <vector>//容器,存数组的数,表数组的长度
#include <bits/stdc++.h>
using namespace std;
typedef long long ll;
ll a[10];
int main()
{
cin>>a[1]>>a[2]>>a[3];
sort(a+1,a+4);//排序
if(a[2]-a[1]==a[3]-a[2])
cout<<2*a[3]-a[2];
else if(a[3]-a[2]>a[2]-a[1])
cout<<(a[2]+a[3])/2<<endl;
else
cout<<(a[1]+a[2])/2<<endl;
return 0;
}