#include using namespace std; int main() { ios::sync_with_stdio(false); cin.tie(0); int n; cin >> n; vector ys(n); for (int i = 0; i < n; i++) cin >> ys[i]; sort(ys.begin(), ys.end()); if (n == 2) { cout << ys[1] - ys[0] << endl; return 0; } if (n == 3) { cout << ys[2] - ys[0] << endl; return 0; } vector> dp(n, vector(2, 1e9)); dp[1][0] = ys[1] - ys[0]; dp[2][1] = ys[2] - ys[0]; for (int i = 3; i < n; i++) { dp[i][0] = min(dp[i - 2][0], dp[i - 2][1]) + ys[i] - ys[i - 1]; dp[i][1] = min(dp[i - 3][0], dp[i - 3][1]) + ys[i] - ys[i - 2]; } cout << min(dp[n - 1][0], dp[n - 1][1]) << endl; }