#include <bits/stdc++.h>
using namespace std;
const int N = 5e3 + 3;
const int p = 89;
const int md = 1e9 + 7;
int n, del, ansl, ansr, mn, anss, sm;
int a[N];
int d[N];
void update(int v) {
  while (v <= n) {
    d[v]++;
    v |= (v + 1);
  }
}
int get(int v) {
  int res = 0;
  while (v >= 0) {
    res += d[v];
    v = (v & (v + 1)) - 1;
  }
  return res;
}
int main() {
  ios_base::sync_with_stdio(0);
  cin.tie(0);
  cout.tie(0);
  cin >> n;
  for (int i = 1; i <= n; ++i) {
    cin >> a[i];
    a[i]++;
  }
  mn = 0;
  for (int i = 1; i <= n; ++i) {
    memset(d, 0, sizeof(d));
    update(a[i]);
    for (int j = i + 1; j <= n; ++j) {
      update(a[j]);
      del = get(n) - get(a[j]);
      del -= get(a[j] - 1);
      del -= get(n) - get(a[i]);
      del += get(a[i] - 1);
      if (a[i] < a[j])
        del++;
      else
        del--;
      if (mn < del) {
        mn = del;
        anss = 1;
      } else if (mn == del) {
        anss++;
      }
    }
  }
  memset(d, 0, sizeof(d));
  for (int i = 1; i <= n; ++i) {
    update(a[i]);
    sm += get(n) - get(a[i]);
  }
  cout << sm - mn << " " << anss;
}
