#include <bits/stdc++.h>
using namespace std;
using pint = pair<int, int>;
long long mod = 1000000007, mod2 = 998244353;
void chmin(long long &a, long long b) {
  if (a > b) a = b;
}
void chmax(long long &a, long long b) {
  if (a < b) a = b;
}
const long long INF = 1LL << 60;
int gcd(int a, int b) {
  if (b == 0)
    return a;
  else
    return gcd(b, a % b);
}
using Edge = pair<int, int>;
using Graph = vector<vector<Edge> >;
int main() {
  int n, ans = 0, mn = 0, mx;
  cin >> n;
  vector<int> a(9);
  for (int i = 0; i < n; ++i) {
    int x;
    cin >> x;
    if (x <= 399) a[0]++;
    if (x >= 400 && x < 800) a[1]++;
    if (x >= 800 && x < 1200) a[2]++;
    if (x >= 1200 && x < 1600) a[3]++;
    if (x >= 1600 && x < 2000) a[4]++;
    if (x >= 2000 && x < 2400) a[5]++;
    if (x >= 2400 && x < 2800) a[6]++;
    if (x >= 2800 && x < 3200) a[7]++;
    if (x >= 3200) a[8]++;
  }
  for (int i = 0; i < 9; ++i) {
    if (a[i] > 0) mn++;
  }
  if (a[7] && a[8]) {
    mn--;
    mx = mn;
    mx += a[8];
  } else {
    mx = mn;
  }
  cout << mn << " " << mx << endl;
  return 0;
}
