6
12 8 12 17 20 5
17 4 8 8 8 4
 6
4 1 12 9 3 11
12 20 19 12 19 11
 1
1
1
 2
1 2
1 1
 1
7
5
 6
16 20 18 7 14 2
17 12 4 10 7 4

705
 917
 1
 9
 5
 741

#include <bits/stdc++.h>
using namespace std;
int n, A[2][300005], B[300005], C[2][300005], D[300005];
int main() {
  scanf("%d", &n);
  int i, ans, ans1 = 0;
  for (i = 1; i <= n; i++) scanf("%d", &A[0][i]);
  for (i = 1; i <= n; i++) scanf("%d", &A[1][i]);
  for (i = 1; i <= n; i++) {
    if (i & 1) {
      B[i] = B[i - 1] + A[0][i] * (2 * (i - 1)) + A[1][i] * (2 * (i - 1) + 1);
    } else {
      B[i] = B[i - 1] + A[0][i] * (2 * (i - 1) + 1) + A[1][i] * (2 * (i - 1));
    }
  }
  for (i = n; i; --i)
    C[0][i] = C[0][i + 1] + A[0][i] * (i - 1) + A[1][i] * (n + n - i);
  for (i = n; i; --i)
    C[1][i] = C[0][i + 1] + A[0][i] * (n + n - i) + A[1][i] * (i - 1);
  for (i = n; i; --i) D[i] = D[i + 1] + A[0][i] + A[1][i];
  for (i = 0; i <= n; i++) {
    if (i & 1) {
      ans = B[i] + C[1][i + 1] + i * D[i + 1];
    } else {
      ans = B[i] + (C[0][i + 1]) + i * D[i + 1];
    }
    ans1 = max(ans1, ans);
  }
  printf("%d", ans1);
  return 0;
}
