#include <bits/stdc++.h>
using namespace std;
template <class T>
bool chmax(T &a, const T &b) {
  if (a < b) {
    a = b;
    return 1;
  }
  return 0;
}
template <class T>
bool chmin(T &a, const T &b) {
  if (b < a) {
    a = b;
    return 1;
  }
  return 0;
}
void put_double(double obj) { printf("%.12f\n", obj); };
template <typename T>
std::string to_string(const T &n) {
  std::ostringstream stm;
  stm << n;
  return stm.str();
}
int main() {
  int N;
  cin >> N;
  vector<int> a(N);
  for (int i = 0; i < (int)(N); i++) cin >> a[i];
  set<int> key;
  int tmp = 0;
  for (int i = 0; i < (int)(N); i++) {
    if (a[i] < 3200)
      key.insert(a[i] / 400);
    else
      tmp++;
  }
  cout << max(1, (int)(key.size())) << " " << min(8, (int)(key.size() + tmp))
       << endl;
}
