#include <bits/stdc++.h>
int getBlock(int rating) {
  if (rating < 400)
    return 1;
  else if (rating < 800)
    return 2;
  else if (rating < 1200)
    return 3;
  else if (rating < 1600)
    return 4;
  else if (rating < 2000)
    return 5;
  else if (rating < 2400)
    return 6;
  else if (rating < 2800)
    return 7;
  else if (rating < 3200)
    return 8;
  else
    return 0;
}
int min(int a, int b) {
  if (a < b) return a;
  return b;
}
int max(int a, int b) {
  if (a > b) return a;
  return b;
}
int main() {
  int n, t, block[9] = {0};
  scanf("%d", &n);
  for (int i = 0; i < n; i++) {
    scanf("%d", &t);
    block[getBlock(t)]++;
  }
  int res = 0;
  for (int i = 1; i <= 8; i++) {
    if (block[i] != 0) res++;
  }
  printf("%d %d", max(res, 1), min(res + block[0], 8));
}
