fun main(args: Array<String>) {
    //val n =
    readLine()      //!!.toInt()
    val rates = readLine()!!.split(" ").map(String::toInt)      // 1≤ai≤4800

    /** 400ごとなのでwhen不要
     * @return 0-8 */
    fun rank(rate: Int): Int {
        // 3600を超えた場合でも8
        return Math.min(rate / 400, 8)     //Kotlin1.1ならminOf()が使えるのに。
    }

    val ranks = rates.map(::rank)
    val rankerCounts = IntArray(9, { 0 }).apply {
        ranks.forEach { this[it]++ }
    }.toList()

    val colorCount = (0..7).count { rankerCounts[it] != 0 }
    val highRateCount = rankerCounts[8]
    // 全員3200以上ならcountは0だが、minは1
    val min = Math.max(1, colorCount)
    //「好きな色」は「8色の中から」ではなく「8色以外の色」も選べるという意味なのか...
    val max = colorCount + highRateCount

    println("$min $max")
}
