Cod sursa(job #2955151)

Utilizator Vlad_NituNitu Vlad-Petru Vlad_Nitu Data 16 decembrie 2022 14:49:49
Problema Problema rucsacului Scor 0
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.59 kb
#include <bits/stdc++.h>

using namespace std;
string s;
int main() {
    int N, K;
    cin >> N >> K;
    vector<int> v(N);
    for (int i = 0; i < N; ++i)
        cin >> v[i];

    sort(v.begin(), v.end());
    int ans = INT_MAX;

    for (int i = 1; i < N; ++i)
        if (v[i] - K > 0)
        {
            int possible_min = v[i] - K;
            int possible_max = v[i] + K;

            possible_min = min(possible_min, v[0] + K);
            possible_max = max(possible_max, v[N-1] - K);

            ans = min(ans, possible_max - possible_min);
        }

    cout << ans << '\n';
    return 0;
}