자윤이와고리즘/Code

[백준] 10819 | 차이를 최대로

EUJU 2019. 5. 14. 14:03

#include  <iostream>
#include  <algorithm>
#include  <vector>
#include  <math.h>
using namespace std;


int main() {
     int i,j, t, max = -1, sum, tmp;

    cin >> t;
    vector <int> num(t);

    for (i = 0; i < t; i++)
    cin >> num[i];

    for (i = 0; i < t-1; i++){
        for (j = i + 1; j < t; j++) {
            if (num[i] > num[j]) {
                tmp = num[i];
                num[i] = num[j];
                num[j] = tmp;
            }
       }
    }
    while (next_permutation(num.begin(), num.end())) {
        sum = 0;
        for (i = 0; i < t - 1; i++) {
            sum += (abs(num[i] - num[i + 1]));
            if (sum > max)
                max = sum;
       }
    }
    cout << max << endl;
}