BOJ 2997 네 번째 수

 

들어가야할 수가 어느 구간에 존재해야할지 채크만 해주면 된다.

가장 클지, 3번째 수일지, 2번째 수일지 채크해주면 된다.

#include <cstdio>
#include <cstdlib>
#include <iostream>
#include <cstring>
#include <string>
#include <algorithm>
#include <cmath>
#include <vector>
#include <queue>
#include <stack>
#include <deque>
#include <map>
#include <unordered_map>
#include <set>
#include <unordered_set>

using namespace std;
#define INF 1234567890

int main() {
	ios::sync_with_stdio(false);
	cin.tie(NULL);
	cout.tie(NULL);

	int arr[3];
	cin >> arr[0] >> arr[1] >> arr[2];
	sort(arr, arr + 3);
	
	if (arr[1] - arr[0] == arr[2] - arr[1])
		cout << arr[2] + arr[2] - arr[1];
	else if(arr[1] - arr[0] < arr[2] - arr[1])
		cout << (arr[2] + arr[1]) / 2;
	else
		cout << (arr[1] + arr[0])/2;
	

	return 0;
}



네 번째 수

시간 제한 메모리 제한 제출 정답 맞은 사람 정답 비율
1 초 128 MB 1403 678 637 52.775%

문제

상근이는 등차수열을 이루는 정수 4개를 골랐다. 이것은 상근이가 고른 수 4개를 정렬했을 때, 인접한 쌍의 차이가 일정하다는 것을 의미한다. 그 다음 이렇게 고른 숫자 4개를 노래로 만들어서 외우고 다닌다.

어느날, 상근이는 자신이 고른 4개 숫자 중 1개를 까먹었다.

상근이가 고른 네 개의 숫자 중 세 개가 주어졌을 때, 네 번째 숫자를 구하는 프로그램을 작성하시오.

입력

첫째 줄에 상근이가 고른 네 개의 숫자 중 세 개가 주어진다. 이 숫자는 크기 순이 아닐 수도 있고, -100보다 크거나 같고, 100보다 작거나 같은 정수이다.

출력

첫째 줄에 네 번째 숫자를 출력한다. 정답이 여러 개일 경우에는 아무거나 출력하면 된다. 또한 정답이 존재하지 않는 경우는 입력으로 주어지지 않는다.

예제 입력 1

4 6 8

예제 출력 1

10

출처

Contest > Croatian Open Competition in Informatics > COCI 2007/2008 > Contest #3 1번