import java.util.Scanner;

public class Main {

    public static void main(String[] args) {
        new Main().compute();
    }

    void compute() {
        Scanner sc = new Scanner(System.in);
        int N = sc.nextInt();
        int counst = 0;
        boolean[] exists = new boolean[8];
        for (int i = 0; i < N; i++) {
            int a = sc.nextInt();
            if (a < 3200) {
                exists[a / 400] = true;
            } else {
                counst++;
            }
        }
        int nkinds = 0;
        for (int i = 0; i < 8; i++) {
            if (exists[i]) {
                nkinds++;
            }
        }
        if (counst != 0) {
            System.out.println(Math.max(1, nkinds) + " " + (nkinds + counst));
        } else {
            System.out.println(nkinds + " " + nkinds);
        }
    }
} import java.util.Scanner; Scanner java.util public class Main {

    public static void main(String[] args) {
        new Main().compute();
    }

    void compute() {
        Scanner sc = new Scanner(System.in);
        int N = sc.nextInt();
        int counst = 0;
        boolean[] exists = new boolean[8];
        for (int i = 0; i < N; i++) {
            int a = sc.nextInt();
            if (a < 3200) {
                exists[a / 400] = true;
            } else {
                counst++;
            }
        }
        int nkinds = 0;
        for (int i = 0; i < 8; i++) {
            if (exists[i]) {
                nkinds++;
            }
        }
        if (counst != 0) {
            System.out.println(Math.max(1, nkinds) + " " + (nkinds + counst));
        } else {
            System.out.println(nkinds + " " + nkinds);
        }
    }
} Main public static void main(String[] args) {
        new Main().compute();
    } main {
        new Main().compute();
    } new Main().compute() new Main().compute new Main() String[] args args void compute() {
        Scanner sc = new Scanner(System.in);
        int N = sc.nextInt();
        int counst = 0;
        boolean[] exists = new boolean[8];
        for (int i = 0; i < N; i++) {
            int a = sc.nextInt();
            if (a < 3200) {
                exists[a / 400] = true;
            } else {
                counst++;
            }
        }
        int nkinds = 0;
        for (int i = 0; i < 8; i++) {
            if (exists[i]) {
                nkinds++;
            }
        }
        if (counst != 0) {
            System.out.println(Math.max(1, nkinds) + " " + (nkinds + counst));
        } else {
            System.out.println(nkinds + " " + nkinds);
        }
    } compute {
        Scanner sc = new Scanner(System.in);
        int N = sc.nextInt();
        int counst = 0;
        boolean[] exists = new boolean[8];
        for (int i = 0; i < N; i++) {
            int a = sc.nextInt();
            if (a < 3200) {
                exists[a / 400] = true;
            } else {
                counst++;
            }
        }
        int nkinds = 0;
        for (int i = 0; i < 8; i++) {
            if (exists[i]) {
                nkinds++;
            }
        }
        if (counst != 0) {
            System.out.println(Math.max(1, nkinds) + " " + (nkinds + counst));
        } else {
            System.out.println(nkinds + " " + nkinds);
        }
    } Scanner sc = new Scanner(System.in); sc new Scanner(System.in) int N = sc.nextInt(); N sc.nextInt() sc.nextInt sc int counst = 0; counst 0 boolean[] exists = new boolean[8]; exists new boolean[8] 8 for (int i = 0; i < N; i++) {
            int a = sc.nextInt();
            if (a < 3200) {
                exists[a / 400] = true;
            } else {
                counst++;
            }
        } int i = 0; int i = 0; i 0 i < N i N i++ i++ i {
            int a = sc.nextInt();
            if (a < 3200) {
                exists[a / 400] = true;
            } else {
                counst++;
            }
        } {
            int a = sc.nextInt();
            if (a < 3200) {
                exists[a / 400] = true;
            } else {
                counst++;
            }
        } int a = sc.nextInt(); a sc.nextInt() sc.nextInt sc if (a < 3200) {
                exists[a / 400] = true;
            } else {
                counst++;
            } a < 3200 a 3200 {
                exists[a / 400] = true;
            } exists[a / 400] = true exists[a / 400] exists a / 400 a 400 true {
                counst++;
            } counst++ counst int nkinds = 0; nkinds 0 for (int i = 0; i < 8; i++) {
            if (exists[i]) {
                nkinds++;
            }
        } int i = 0; int i = 0; i 0 i < 8 i 8 i++ i++ i {
            if (exists[i]) {
                nkinds++;
            }
        } {
            if (exists[i]) {
                nkinds++;
            }
        } if (exists[i]) {
                nkinds++;
            } exists[i] exists i {
                nkinds++;
            } nkinds++ nkinds if (counst != 0) {
            System.out.println(Math.max(1, nkinds) + " " + (nkinds + counst));
        } else {
            System.out.println(nkinds + " " + nkinds);
        } counst != 0 counst 0 {
            System.out.println(Math.max(1, nkinds) + " " + (nkinds + counst));
        } System.out.println(Math.max(1, nkinds) + " " + (nkinds + counst)) System.out.println System.out System System.out Math.max(1, nkinds) + " " + (nkinds + counst) Math.max(1, nkinds) + " " + (nkinds + counst) Math.max(1, nkinds) Math.max Math 1 nkinds " " (nkinds + counst) nkinds counst {
            System.out.println(nkinds + " " + nkinds);
        } System.out.println(nkinds + " " + nkinds) System.out.println System.out System System.out nkinds + " " + nkinds nkinds + " " + nkinds nkinds " " nkinds public class Main {

    public static void main(String[] args) {
        new Main().compute();
    }

    void compute() {
        Scanner sc = new Scanner(System.in);
        int N = sc.nextInt();
        int counst = 0;
        boolean[] exists = new boolean[8];
        for (int i = 0; i < N; i++) {
            int a = sc.nextInt();
            if (a < 3200) {
                exists[a / 400] = true;
            } else {
                counst++;
            }
        }
        int nkinds = 0;
        for (int i = 0; i < 8; i++) {
            if (exists[i]) {
                nkinds++;
            }
        }
        if (counst != 0) {
            System.out.println(Math.max(1, nkinds) + " " + (nkinds + counst));
        } else {
            System.out.println(nkinds + " " + nkinds);
        }
    }
} public class Main {

    public static void main(String[] args) {
        new Main().compute();
    }

    void compute() {
        Scanner sc = new Scanner(System.in);
        int N = sc.nextInt();
        int counst = 0;
        boolean[] exists = new boolean[8];
        for (int i = 0; i < N; i++) {
            int a = sc.nextInt();
            if (a < 3200) {
                exists[a / 400] = true;
            } else {
                counst++;
            }
        }
        int nkinds = 0;
        for (int i = 0; i < 8; i++) {
            if (exists[i]) {
                nkinds++;
            }
        }
        if (counst != 0) {
            System.out.println(Math.max(1, nkinds) + " " + (nkinds + counst));
        } else {
            System.out.println(nkinds + " " + nkinds);
        }
    }
} Main
import java.util.Scanner;

public class Main {

    public static void main(String[] args) {
        new Main().compute();
    }

    void compute() {
        Scanner sc = new Scanner(System.in);
        int N = sc.nextInt();
        int counst = 0;
        boolean[] exists = new boolean[8];
        for (int i = 0; i < N; i++) {
            int a = sc.nextInt();
            if (a < 3200) {
                exists[a / 400] = true;
            } else {
                counst++;
            }
        }
        int nkinds = 0;
        for (int i = 0; i < 8; i++) {
            if (exists[i]) {
                nkinds++;
            }
        }
        if (counst != 0) {
            System.out.println(Math.max(1, nkinds) + " " + (nkinds + counst));
        } else {
            System.out.println(nkinds + " " + nkinds);
        }
    }
}
