#include <bits/stdc++.h>
using namespace std;
long power(long base, long exponent, long mod) {
  if (exponent % 2) {
    return power(base, exponent - 1, mod) * base % mod;
  } else if (exponent) {
    long root_ans = power(base, exponent / 2, mod);
    return root_ans * root_ans % mod;
  } else {
    return 1;
  }
}
struct position {
  int y, x;
};
position move_pattern[4] = {{-1, 0}, {0, 1}, {1, 0}, {0, -1}};
template <class itr>
void array_output(itr start, itr goal) {
  string ans;
  for (auto i = start; i != goal; i++) {
    ans += to_string(*i) + " ";
  }
  ans.pop_back();
  cout << ans << endl;
}
long gcd(long a, long b) {
  if (a && b) {
    return gcd(min(a, b), max(a, b) % min(a, b));
  } else {
    return a;
  }
}
int main() {
  int N;
  cin >> N;
  vector<bool> is_in_this(8, false);
  int free_color = 0;
  for (int i = 0; i < N; i++) {
    int rate;
    cin >> rate;
    bool is_free_color = true;
    for (int j = 0; j < 8; j++) {
      if (rate <= j * 400 + 399) {
        is_in_this[j] = true;
        is_free_color = false;
        break;
      }
    }
    free_color += is_free_color;
  }
  int is_in_this_sum = 0;
  for (int i = 0; i < 8; i++) {
    is_in_this_sum += is_in_this[i];
  }
  cout << max(1, is_in_this_sum) << " " << min(8, is_in_this_sum + free_color)
       << endl;
}
