#include <bits/stdc++.h>
using namespace std;
const long long INF = 100000000000000001;
struct edge {
  int to, cost;
};
int dy[] = {0, 0, 1, -1};
int dx[] = {1, -1, 0, 0};
struct Road {
  double cost;
  int a, b;
};
int main() {
  long long n;
  long long a[101];
  long long b = 0, c = 0, d = 0, e = 0, f = 0, g = 0, h = 0, m = 0, o1 = 0,
            o2 = 0;
  long long total1 = 0;
  long long total2 = 0;
  cin >> n;
  for (long long i = 0; i < n; ++i) {
    cin >> a[i];
    if (a[i] <= 399) {
      b = 1;
    } else if (a[i] <= 799) {
      c = 1;
    } else if (a[i] <= 1199) {
      d = 1;
    } else if (a[i] <= 1599) {
      e = 1;
    } else if (a[i] <= 1999) {
      f = 1;
    } else if (a[i] <= 2399) {
      g = 1;
    } else if (a[i] <= 2799) {
      h = 1;
    } else if (a[i] <= 3199) {
      m = 1;
    }
    if (a[i] >= 3200) {
      if (n == 1) {
        o2 = 1;
      }
      o1++;
    }
  }
  total1 = b + c + d + e + f + g + h + m + o2;
  if (total1 == 0) {
    o1 = 1;
  }
  if (n - total1 < o1) {
    total2 = n;
  } else {
    total2 = b + c + d + e + f + g + h + m + o1;
  }
  cout << total1 << " " << total2 << endl;
  return 0;
}
