문제 :
https://www.acmicpc.net/problem/10819
10819번: 차이를 최대로
첫째 줄에 N (3 ≤ N ≤ 8)이 주어진다. 둘째 줄에는 배열 A에 들어있는 정수가 주어진다. 배열에 들어있는 정수는 -100보다 크거나 같고, 100보다 작거나 같다.
www.acmicpc.net
소스 :
#include <iostream>
#include <algorithm>
using namespace std;
int main()
{
int n;
cin >> n;
int num[8] = { 0 };
for (int i = 0; i < n; i++)
{
cin >> num[i];
}
sort(num, &num[n]);
int value = -87654321;
int sum = 0;
do
{
sum = 0;
for (int i = 0; i < n -1; i++)
{
sum += abs(num[i] - num[i + 1]);
}
if (value < sum)
{
value = sum;
}
} while (next_permutation(num, &num[n]));
cout << value << endl;
return 0;
}
'algorithm > ACMICPC' 카테고리의 다른 글
이전 순열 - 10973 (0) | 2019.11.19 |
---|---|
다음 순열 - 10972 (0) | 2019.11.19 |
1, 2, 3 더하기 - 9095 (0) | 2019.11.19 |
일곱 난쟁이 - 2309 (0) | 2019.11.19 |
날짜 계산 - 1476 (0) | 2019.11.19 |
댓글