#include <bits/stdc++.h>
using namespace std;
const long long int INF = 1e18;
const long long int mod = 1e9 + 7;
long long int gcd(long long int A, long long int B) {
  if (A % B == 0)
    return (B);
  else
    return (gcd(B, A % B));
}
long long int keta(long long int N) {
  int tmp{};
  while (N > 0) {
    tmp += (N % 10);
    N /= 10;
  }
  N = tmp;
  return N;
}
vector<vector<long long int>> combination(long long int n, long long int r) {
  vector<vector<long long int>> v(n + 1, vector<long long int>(n + 1, 0));
  for (long long int i = 0; i < v.size(); ++i) {
    v[i][0] = 1;
    v[i][i] = 1;
  }
  for (long long int i = 1; i < v.size(); ++i) {
    for (long long int j = 0; j < i; ++j) {
      v[i][j] = (v[i - 1][j - 1] + v[i - 1][j]);
    }
  }
  return v;
}
bool kai(string S) {
  bool flag = true;
  for (long long int i = 0; i < S.size() / 2; ++i) {
    if (S[i] != S[S.size() - i - 1]) {
      flag = false;
      break;
    }
  }
  return flag;
}
int main() {
  long long int n;
  cin >> n;
  vector<long long int> g(9);
  for (long long int i = 0; i < n; ++i) {
    long long int a;
    cin >> a;
    a /= 400;
    if (a >= 8) {
      a = 8;
    }
    g[a]++;
  }
  long long int x = 0;
  for (long long int i = 0; i < 8; ++i) {
    if (g[i] > 0) {
      x++;
    }
  }
  long long int y = x + g[8];
  cout << x << ' ' << y << endl;
  return 0;
}
