백준 10819 c++

magicdrill·2024년 6월 12일

백준 문제풀이

목록 보기
368/673

백준 10819 c++

이전에 풀었던 next_permutation 함수를 사용해 모든 순열을 만드는 함수를 사용해 보았다.

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

using namespace std;

void input_vector(vector<int> &v)
{
	int N, i, temp;

	cin >> N;
	for (i = 0; i < N; i++)
	{
		cin >> temp;
		v.push_back(temp);
	}
	sort(v.begin(), v.end());

	return;
}

void find_answer(vector<int>& v)
{
	int i, size = v.size(), sum = 0, answer = 0; 

	do
	{
		sum = 0;
		for (i = 0; i < size; i++)
		{
			if (i == size - 1)
			{
				continue;
			}
			sum += abs(v[i] - v[i + 1]);
		}
		answer = max(answer, sum);
	} while (next_permutation(v.begin(), v.end()));

	cout << answer << "\n";

	return;
}

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

	vector<int> v;

	input_vector(v);
	find_answer(v);
	
	return 0;
}

0개의 댓글