#include <bits/stdc++.h>
using namespace std;
const int inf = 0x3f3f3f3f;
const int maxn = 3e5 + 10;
long long sum[maxn];
pair<int, int> a[maxn];
int main() {
  int n;
  scanf("%d", &n);
  for (int i = 1; i < n + 1; i++) scanf("%d", &a[i].first), a[i].second = i;
  sort(a + 1, a + n + 1);
  reverse(a + 1, a + n + 1);
  if (n == 1) {
    cout << a[1].first;
    return 0;
  }
  if (n & 1) {
    vector<int> v;
    for (int i = 1; i < n / 2 + 2; i++) {
      v.push_back(a[i].second);
    }
    sort(v.begin(), v.end());
    int f = 1;
    if (v[0] != 1) f = 0;
    for (int i = 1; i < (int)v.size(); i++)
      if (v[i] - v[i - 1] != 2) f = 0;
    if (f) swap(a[n / 2 + 1], a[n / 2 + 2]);
  }
  sum[0] = 0;
  for (int i = 1; i < n + 1; i++) {
    sum[i] = sum[i - 1] + a[i].first;
  }
  long long ans = -0x3f3f3f3f3f3f3f3f;
  for (int i = 0; i < n + 1; i++) {
    if ((n + i) % 3 == 2) {
      ans = max(ans, sum[i] - (sum[n] - sum[i]));
    }
  }
  cout << ans;
  return 0;
}
