#include <bits/stdc++.h>
clock_t CLOCK;
using namespace std;
using ll = long long;
using ld = long double;
using vll = vector<ll>;
using vvll = vector<vector<ll>>;
using mll = map<ll, ll>;
using qll = queue<ll>;
using P = pair<ll, ll>;
constexpr ll INF = 0x3f3f3f3f3f3f3f3f;
constexpr ld PI = 3.141592653589793238462643383279;
ll get_digit(ll x) { return to_string(x).size(); }
ll gcd(ll x, ll y) { return y ? gcd(y, x % y) : x; }
ll lcm(ll a, ll b) { return a / gcd(a, b) * b; }
vector<P> factorize(ll n) {
  vector<P> result;
  for (ll i = 2; i * i <= n; ++i) {
    if (n % i == 0) {
      result.push_back({i, 0});
      while (n % i == 0) {
        n /= i;
        result.back().second++;
      }
    }
  }
  if (n != 1) {
    result.push_back({n, 1});
  }
  return result;
}
vll divisor(ll n) {
  vll ret;
  for (ll i = 1; i * i <= n; i++) {
    if (n % i == 0) {
      ret.push_back(i);
      if (i * i != n) ret.push_back(n / i);
    }
  }
  sort(ret.begin(), ret.end());
  return (ret);
}
signed main() {
  cin.tie(0);
  ios::sync_with_stdio(false);
  ll N;
  cin >> N;
  vll count(9, 0);
  for (ll i = 0; i < (ll)(N); ++i) {
    ll a;
    cin >> a;
    if (a <= 399) {
      count[0]++;
    } else if (a <= 799) {
      count[1]++;
    } else if (a <= 1199) {
      count[2]++;
    } else if (a <= 1599) {
      count[3]++;
    } else if (a <= 1999) {
      count[4]++;
    } else if (a <= 2399) {
      count[5]++;
    } else if (a <= 2799) {
      count[6]++;
    } else if (a <= 3199) {
      count[7]++;
    } else {
      count[8]++;
    }
  }
  ll ans_min = 0;
  ll ans_max = 0;
  for (ll i = 0; i < (ll)(8); ++i) {
    if (count[i] != 0) {
      ans_min++;
      ans_max++;
    }
  }
  ans_max = ans_max + count[8];
  cout << ans_min << " " << ans_max << endl;
  return 0;
}
