import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        try (Scanner sc = new Scanner(System.in);) {
            int n = sc.nextInt();
            boolean[] useColors = new boolean[3200 / 8];
            int over3200 = 0;
            for (int i = 0; i < n; i++) {
                int a = sc.nextInt();
                if (a >= 3200) {
                    over3200++;
                } else {
                    useColors[a / 400] = true;
                }
            }
            int useColorsCount = 0;
            for (boolean use : useColors) {
                if (use) useColorsCount++;
            }
            System.out.printf("%s %s", useColorsCount == 0 ? 1 : useColorsCount, useColorsCount + over3200);
        }
    }
} import java.util.Scanner; Scanner java.util public class Main {
    public static void main(String[] args) {
        try (Scanner sc = new Scanner(System.in);) {
            int n = sc.nextInt();
            boolean[] useColors = new boolean[3200 / 8];
            int over3200 = 0;
            for (int i = 0; i < n; i++) {
                int a = sc.nextInt();
                if (a >= 3200) {
                    over3200++;
                } else {
                    useColors[a / 400] = true;
                }
            }
            int useColorsCount = 0;
            for (boolean use : useColors) {
                if (use) useColorsCount++;
            }
            System.out.printf("%s %s", useColorsCount == 0 ? 1 : useColorsCount, useColorsCount + over3200);
        }
    }
} Main public static void main(String[] args) {
        try (Scanner sc = new Scanner(System.in);) {
            int n = sc.nextInt();
            boolean[] useColors = new boolean[3200 / 8];
            int over3200 = 0;
            for (int i = 0; i < n; i++) {
                int a = sc.nextInt();
                if (a >= 3200) {
                    over3200++;
                } else {
                    useColors[a / 400] = true;
                }
            }
            int useColorsCount = 0;
            for (boolean use : useColors) {
                if (use) useColorsCount++;
            }
            System.out.printf("%s %s", useColorsCount == 0 ? 1 : useColorsCount, useColorsCount + over3200);
        }
    } main {
        try (Scanner sc = new Scanner(System.in);) {
            int n = sc.nextInt();
            boolean[] useColors = new boolean[3200 / 8];
            int over3200 = 0;
            for (int i = 0; i < n; i++) {
                int a = sc.nextInt();
                if (a >= 3200) {
                    over3200++;
                } else {
                    useColors[a / 400] = true;
                }
            }
            int useColorsCount = 0;
            for (boolean use : useColors) {
                if (use) useColorsCount++;
            }
            System.out.printf("%s %s", useColorsCount == 0 ? 1 : useColorsCount, useColorsCount + over3200);
        }
    } try (Scanner sc = new Scanner(System.in);) {
            int n = sc.nextInt();
            boolean[] useColors = new boolean[3200 / 8];
            int over3200 = 0;
            for (int i = 0; i < n; i++) {
                int a = sc.nextInt();
                if (a >= 3200) {
                    over3200++;
                } else {
                    useColors[a / 400] = true;
                }
            }
            int useColorsCount = 0;
            for (boolean use : useColors) {
                if (use) useColorsCount++;
            }
            System.out.printf("%s %s", useColorsCount == 0 ? 1 : useColorsCount, useColorsCount + over3200);
        } {
            int n = sc.nextInt();
            boolean[] useColors = new boolean[3200 / 8];
            int over3200 = 0;
            for (int i = 0; i < n; i++) {
                int a = sc.nextInt();
                if (a >= 3200) {
                    over3200++;
                } else {
                    useColors[a / 400] = true;
                }
            }
            int useColorsCount = 0;
            for (boolean use : useColors) {
                if (use) useColorsCount++;
            }
            System.out.printf("%s %s", useColorsCount == 0 ? 1 : useColorsCount, useColorsCount + over3200);
        } Scanner sc = new Scanner(System.in) Scanner sc = new Scanner(System.in) new Scanner(System.in) int n = sc.nextInt(); n sc.nextInt() sc.nextInt sc boolean[] useColors = new boolean[3200 / 8]; useColors new boolean[3200 / 8] 3200 / 8 3200 8 int over3200 = 0; over3200 0 for (int i = 0; i < n; i++) {
                int a = sc.nextInt();
                if (a >= 3200) {
                    over3200++;
                } else {
                    useColors[a / 400] = true;
                }
            } int i = 0; int i = 0; i 0 i < n i n i++ i++ i {
                int a = sc.nextInt();
                if (a >= 3200) {
                    over3200++;
                } else {
                    useColors[a / 400] = true;
                }
            } {
                int a = sc.nextInt();
                if (a >= 3200) {
                    over3200++;
                } else {
                    useColors[a / 400] = true;
                }
            } int a = sc.nextInt(); a sc.nextInt() sc.nextInt sc if (a >= 3200) {
                    over3200++;
                } else {
                    useColors[a / 400] = true;
                } a >= 3200 a 3200 {
                    over3200++;
                } over3200++ over3200 {
                    useColors[a / 400] = true;
                } useColors[a / 400] = true useColors[a / 400] useColors a / 400 a 400 true int useColorsCount = 0; useColorsCount 0 for (boolean use : useColors) {
                if (use) useColorsCount++;
            } boolean use useColors {
                if (use) useColorsCount++;
            } {
                if (use) useColorsCount++;
            } if (use) useColorsCount++; use useColorsCount++ useColorsCount System.out.printf("%s %s", useColorsCount == 0 ? 1 : useColorsCount, useColorsCount + over3200) System.out.printf System.out System System.out "%s %s" useColorsCount == 0 ? 1 : useColorsCount useColorsCount == 0 useColorsCount 0 1 useColorsCount useColorsCount + over3200 useColorsCount over3200 String[] args args public class Main {
    public static void main(String[] args) {
        try (Scanner sc = new Scanner(System.in);) {
            int n = sc.nextInt();
            boolean[] useColors = new boolean[3200 / 8];
            int over3200 = 0;
            for (int i = 0; i < n; i++) {
                int a = sc.nextInt();
                if (a >= 3200) {
                    over3200++;
                } else {
                    useColors[a / 400] = true;
                }
            }
            int useColorsCount = 0;
            for (boolean use : useColors) {
                if (use) useColorsCount++;
            }
            System.out.printf("%s %s", useColorsCount == 0 ? 1 : useColorsCount, useColorsCount + over3200);
        }
    }
} public class Main {
    public static void main(String[] args) {
        try (Scanner sc = new Scanner(System.in);) {
            int n = sc.nextInt();
            boolean[] useColors = new boolean[3200 / 8];
            int over3200 = 0;
            for (int i = 0; i < n; i++) {
                int a = sc.nextInt();
                if (a >= 3200) {
                    over3200++;
                } else {
                    useColors[a / 400] = true;
                }
            }
            int useColorsCount = 0;
            for (boolean use : useColors) {
                if (use) useColorsCount++;
            }
            System.out.printf("%s %s", useColorsCount == 0 ? 1 : useColorsCount, useColorsCount + over3200);
        }
    }
} Main
import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        try (Scanner sc = new Scanner(System.in);) {
            int n = sc.nextInt();
            boolean[] useColors = new boolean[3200 / 8];
            int over3200 = 0;
            for (int i = 0; i < n; i++) {
                int a = sc.nextInt();
                if (a >= 3200) {
                    over3200++;
                } else {
                    useColors[a / 400] = true;
                }
            }
            int useColorsCount = 0;
            for (boolean use : useColors) {
                if (use) useColorsCount++;
            }
            System.out.printf("%s %s", useColorsCount == 0 ? 1 : useColorsCount, useColorsCount + over3200);
        }
    }
}
