using System;
using System.Collections.Generic;
using System.Linq;

namespace atcoder
{
  class Program
  {
    static void Main(string[] args)
    {

        int N = int.Parse(Console.ReadLine());
        var list = Console.ReadLine().Split().Select(int.Parse).ToList();

        // 400ごとに配列を切り替えて値を入れる
        // 8は何色にでもなれる
        int[] RateArray = new int[3200 / 400 + 1];

        foreach (var item in list)
        {
          IncrementRateGroup(RateArray, item);
        }

        int numRateKinds = 0;
        // 赤色以下のグループのカウントを行う
        for (int i = 0; i < RateArray.Length - 1; i++)
        {
          numRateKinds = RateArray[i] > 0 ? numRateKinds + 1 : numRateKinds;
        }

        // 赤色超は入れないが赤色超が1人以上いて他のグループに誰もいない場合は、1だけ足す
        int minResult = Math.Max(numRateKinds, RateArray[RateArray.Length - 1] > 0 ? 1 : 0);

        int maxResult = Math.Min(RateArray[RateArray.Length - 1] + numRateKinds, RateArray.Length);
        Console.WriteLine($"{numRateKinds} {maxResult}");

    }

    static void IncrementRateGroup(int[] array, int userRate)
    {
      var rateIndex = userRate / 400;
      if (rateIndex >= array.Length) rateIndex = array.Length - 1;
      array[rateIndex]++;
    }
  }

}
