백준 25707 c++

magicdrill·2024년 5월 9일

백준 문제풀이

목록 보기
344/673

백준 25707 c++

정렬을 통해 풀어보기 위해 예시를 적어보던 중 정답은 (최대값 - 최소값) * 2 라는걸 찾았다. 왜일까?

#include <iostream>
#include <vector>
#include <algorithm>

using namespace std;

void input_beeds(vector<int> &beeds)
{
	int N, i, temp;

	cin >> N;
	for (i = 0; i < N; i++)
	{
		cin >> temp;
		beeds.push_back(temp);
	}

	return;
}

int find_answer(vector<int> &beeds)
{
	int answer = 0;

	//정답 = (최대값 - 최소값) * 2
	/*
	sort(beeds.begin(), beeds.end());
	answer = (beeds.back() - beeds.front()) * 2;
	*/

	answer = (*max_element(beeds.begin(), beeds.end())
		- *min_element(beeds.begin(), beeds.end())) * 2;

	return answer;
}

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

	vector<int> beeds;

	input_beeds(beeds);
	cout << find_answer(beeds) << "\n";

	return 0;
}

0개의 댓글