#include <bits/stdc++.h>
using namespace std;
struct node {
  int va, num;
  bool operator<(const node &o) const {
    if (va != o.va) return va < o.va;
    return num > o.num;
  }
} a[2005];
int b[2005], n;
bool mark[2005];
int main() {
  scanf("%d", &n);
  for (int i = 0; i < n; i++) {
    scanf("%d", &a[i].va);
    a[i].va = abs(a[i].va);
    a[i].num = i;
  }
  sort(&a[0], &a[n]);
  for (int i = 0; i < n; i++) {
    int numP = 0;
    int numN = 0;
    for (int j = a[i].num + 1; j < n; j++) {
      if (mark[j] && b[j] < a[i].va) {
        numP++;
      }
    }
    for (int j = a[i].num - 1; j >= 0; j--) {
      if (mark[j] && b[j] > -a[i].va) {
        numN++;
      }
    }
    mark[a[i].num] = 1;
    if (numP <= numN) {
      b[a[i].num] = a[i].va;
    } else {
      b[a[i].num] = -a[i].va;
    }
  }
  int num = 0;
  for (int i = 0; i < n; i++) {
    for (int j = i + 1; j < n; j++) {
      if (b[i] > b[j]) {
        num++;
      }
    }
  }
  printf("%d\n", num);
}
