Problem:
Score : 400 points

Problem Statement

You are given N integers; the i-th of them is A_i.
Find the maximum possible sum of the absolute differences between the adjacent elements after arranging these integers in a row in any order you like.

Constraints

2 \leq N \leq 10^5

1 \leq A_i \leq 10^9

All values in input are integers.

Input

Input is given from Standard Input in the following format:

N
A_1
:
A_N

Output

Print the maximum possible sum of the absolute differences between the adjacent elements after arranging the given integers in a row in any order you like.

Sample Input 1

5
6
8
1
2
3

Sample Output 1

21

When the integers are arranged as 3,8,1,6,2, the sum of the absolute differences between the adjacent elements is |3 - 8| + |8 - 1| + |1 - 6| + |6 - 2| = 21. This is the maximum possible sum.

Sample Input 2

6
3
1
4
1
5
9

Sample Output 2

25

Sample Input 3

3
5
5
1

Sample Output 3

8

Solution in C++14 (GCC 5.4.1) (judge verdict: Wrong Answer)

#include<stdio.h>
#include<iostream>
#include<algorithm>
#include<cstdio>
#include<string>
#include<cmath>
#include<numeric>
#include<vector>
#include<tuple>
using namespace std;
#define FOR(i,a,b) for(ll i=a;i<b;i++)
#define vint vector<int> 
#define vvint vector<vint>
#define ct(a) cout<<a<<endl
typedef long long ll;
const int MOD = 1e9 + 7;
ll N;
ll a[100010];
int main(void)
{
	cin >> N;
	FOR(i, 0, N)cin >> a[i];
	sort(a, a + N);
	ll ha = -1, owa = N - 1;
	ll ans = 0, hanum = a[owa], owanum = a[owa]; bool turn = true;
	while (abs(ha-owa)!=1) {
		if (turn) {
			ha++;
			ll hajime = abs(hanum - a[ha]);
			ll owari = abs(owanum - a[ha]);
			if (hajime >= owari) {
				hanum = a[ha];
				ans += hajime;
			}else {
				owanum = a[ha];
				ans += owari;
			}
			turn = false;
		}else {
			owa--;
			ll hajime = abs(hanum - a[owa]);
			ll owari = abs(owanum - a[owa]);
			if (hajime >= owari) {
				hanum = a[owa];
				ans += hajime;
			}
			else {
				owanum = a[owa];
				ans += owari;
			}
			turn = true;
		}
	}
	cout << ans << endl;
	return 0;
}