CCCPaste

Untitled

#include 
#include 
#include 
#include 
using namespace std;
typedef long long ll;

int main()
{
    int n;
    ll M;
    cin >> n >> M;
    ll P[n];
    for(int i = 0; i < n; i++) {
        cin >> P[i];
    }
    sort(P, P + n);
    ll result = -5e18;
    do{
        ll ans = 0;
        if(P[0] == 0) {
            for(int i = 0; i < n - 1; i++) {
                ans += llabs(P[i] - P[i + 1]);
            }
            ans += llabs(P[n - 1] - P[0]);
            if(ans <= M) {
                result = max(result, ans);
            }
        }
     
    }while(next_permutation(P, P + n));
    cout << result << endl;
    return 0;
}