#include <bits/stdc++.h>
using ll = long long;
using itn = int;
using namespace std;
static const long double GRATIO = (long double)(1 + sqrt(5)) / 2;
ll GCD(ll a, ll b) { return b ? GCD(b, a % b) : a; }
ll LCM(ll a, ll b) { return a / GCD(a, b) * b; }
int main() {
  int N;
  cin >> N;
  vector<int> a(N);
  vector<int> color(9, 0);
  for (int i = 0; i < int(N); ++i) cin >> a.at(i);
  for (int i = 0; i < int(N); ++i) {
    if (1 <= a.at(i) && a.at(i) < 400) {
      color.at(0)++;
    }
    if (400 <= a.at(i) && a.at(i) < 800) {
      color.at(1)++;
    }
    if (800 <= a.at(i) && a.at(i) < 1200) {
      color.at(2)++;
    }
    if (1200 <= a.at(i) && a.at(i) < 1600) {
      color.at(3)++;
    }
    if (1600 <= a.at(i) && a.at(i) < 2000) {
      color.at(4)++;
    }
    if (2000 <= a.at(i) && a.at(i) < 2400) {
      color.at(5)++;
    }
    if (2400 <= a.at(i) && a.at(i) < 2800) {
      color.at(6)++;
    }
    if (2800 <= a.at(i) && a.at(i) < 3200) {
      color.at(7)++;
    }
    if (3200 <= a.at(i)) {
      color.at(8)++;
    }
  }
  int ans_min = 0;
  for (int i = 0; i < int(8); ++i) {
    if (color.at(i)) ans_min++;
  }
  cout << ans_min << " " << ans_min + color.at(8) << endl;
}
