  #include <stdio.h>
  #include <stdlib.h>

  int *P;

  long long countup(int *A, int p, int r)
  {
    int q = p + (r-p)/2;
    int i, j, k, t;
    long long ct = 0;

    if (r - p < 3) {
      for (i = p; i < r; i++) {
        for (j = r; j > i; j--) {
      if (A[j] < A[j-1]) {
        t = A[j-1];
        A[j-1] = A[j];
        A[j] = t;
        ct++;
      }
        }
      }
      return ct;
    }
    ct += countup(A, p, q);
    ct += countup(A, q+1, r);

    i = p;
    j = q + 1;

    for (k = p; k <= r; k++) {
      if (i >= q + 1 || j >= r + 1) {
        if (i >= q + 1) P[k] = A[j++];
        else P[k] = A[i++];
      } else {
        if (A[i] > A[j]) {
      P[k] = A[j];
      ct += q - i + 1;
      j++;
        } else {
      P[k] = A[i];
      i++;
        }
      }
    }

    for (k = p; k <= r; k++) A[k] = P[k];

    return ct;
  }


  int main(int argc, char *argv[])
  {
    int n, i, j;
    int *A;

    long long a=0;

    scanf("%d", &n);
    A = (int *)malloc(sizeof(int) * n);
    P = (int *)malloc(sizeof(int) * n);
    for (i = 0; i < n; i++) scanf("%d", &A[i]);

    a = countup(A, 0, n - 1);

    printf("%lld\n", a);

    return 0;
  }

