#include <bits/stdc++.h>
using namespace std;
const int INF = 1e9, MOD = 1e9 + 7, ohara = 1e6;
const long long LINF = 1e18;
long long int n, cnt = 0, ans = 0, anss = 0, a[ohara], b, c, d, cmp, cmpp, m, h,
                 w, x, y, sum = 0, pos;
int dy[] = {1, 0, -1, 0};
int dx[] = {0, 1, 0, -1};
string alph("abcdefghijklmnopqrstuvwxyz"), s;
bool fl = true;
struct edge {
  int to, cost;
};
int main(void) {
  cin.tie(0);
  ios::sync_with_stdio(false);
  cin >> n;
  for (long long int(i) = 0; (i) < (int)(n); (i)++) cin >> a[i];
  b = 0;
  c = 0;
  d = 0;
  long long e = 0, f = 0, g = 0, h = 0, ii = 0;
  for (long long int(i) = 0; (i) < (int)(n); (i)++) {
    if (a[i] >= 1 && a[i] <= 399)
      b = 1;
    else if (a[i] >= 400 && a[i] <= 799)
      c = 1;
    else if (a[i] >= 800 && a[i] <= 1199)
      d = 1;
    else if (a[i] >= 1200 && a[i] <= 1599)
      e = 1;
    else if (a[i] >= 1600 && a[i] <= 1999)
      f = 1;
    else if (a[i] >= 2000 && a[i] <= 2399)
      g = 1;
    else if (a[i] >= 2400 && a[i] <= 2799)
      h = 1;
    else if (a[i] >= 2800 && a[i] <= 3199)
      ii = 1;
    else
      cnt++;
  }
  ans = b + c + d + e + f + g + h + ii;
  anss = ans;
  ans = max(ans, cnt);
  cout << ans << " " << anss + cnt << "\n";
  return 0;
}
