#include <bits/stdc++.h>
using namespace std;
vector<int> f8;
const int maxn = 105;
int a[maxn];
bool flag[9];
bool min_8 = false;
int ans_min = 0, ans_max = 0;
void check(int n) {
  if (n <= 399)
    flag[0] = true;
  else if (n <= 799)
    flag[1] = true;
  else if (n <= 1199)
    flag[2] = true;
  else if (n <= 1599)
    flag[3] = true;
  else if (n <= 1999)
    flag[4] = true;
  else if (n <= 2399)
    flag[5] = true;
  else if (n <= 2799)
    flag[6] = true;
  else if (n <= 3199)
    flag[7] = true;
  else
    flag[8] = true;
}
int main() {
  int n;
  scanf("%d", &n);
  memset(flag, false, sizeof(flag));
  for (int i = 0; i < n; i++) {
    scanf("%d", &a[i]);
    check(a[i]);
    if (a[i] > 3199) f8.push_back(a[i]);
  }
  for (int i = 0; i <= 8; i++) {
    if (flag[i] == true) min_8 = true;
  }
  if (min_8) {
    for (int i = 0; i < 8; i++) {
      if (flag[i] == true) ans_min++;
    }
    ans_max = ans_min + f8.size();
  } else if (flag[8]) {
    ans_min = 1;
    ans_max = ans_min + f8.size();
  }
  printf("%d %d\n", ans_min, ans_max);
  return 0;
}
