From SEGFAULT SQUAD
About
include <bits/stdc++.h>
using namespace std; using ll = long long;
define fi first
define se second
int N; ll ans = 0;
void solve(auto& a, int j) { ll psum = 0, nsum = 0; for (int i = j; i < N; i += 2) psum += (N - i) a[i]; for (int i = j + 1; i < N; i += 2) nsum += (N - i) a[i];
ans = max(ans, psum - nsum);
for (int i = 0; i < N; i += 2)
{
psum = psum * 2 - a[i] * 2;
if (N % 2 == 0) psum -= (N - 2) * a[i];
else psum = psum - N * a[i] + a[(i + 1) % N];
nsum = nsum * 2 - a[(i + 1) % N] * 2;
if (N % 2 == 0) nsum -= (N - 2) * a[(i + 1) % N];
else nsum = nsum - (N - 1) * a[(i + 1) % N] + 2 * a[i];
ans = max(ans, psum - nsum);
}
}
int main() { cin >> N;
vector<int> a(N);
for (int& i : a) cin >> i;
solve(a, 0);
solve(a, 1);
cout << ans << endl;
}