import java.util.Arrays;
import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        Scanner in = new Scanner(System.in);
        int n = in.nextInt();
        int a[] = new int[n];
        for (int i = 0; i < n; i++) {
            a[i] = in.nextInt();
        }

        int color[] = {400, 800, 1200, 1600, 2000, 2400, 2800, 3200, Integer.MAX_VALUE};
        int count[] = new int[color.length];
        Arrays.fill(count, 0);

        for (int i = 0; i < n; i++) {
            for (int j = 0; j < color.length; j++) {
                if (a[i] < color[j]) {
                    count[j]++;
                    break;
                }
            }
        }

        int c = 0;
        for (int i = 0; i < count.length - 1; i++) {
            if (count[i] != 0) {
                c++;
            }
        }

        int mn = Math.max(1, c);
        int mx = c + count[count.length - 1];

        System.out.println(mn + " " + mx);
        
    }
} import java.util.Arrays; Arrays java.util import java.util.Scanner; Scanner java.util public class Main {
    public static void main(String[] args) {
        Scanner in = new Scanner(System.in);
        int n = in.nextInt();
        int a[] = new int[n];
        for (int i = 0; i < n; i++) {
            a[i] = in.nextInt();
        }

        int color[] = {400, 800, 1200, 1600, 2000, 2400, 2800, 3200, Integer.MAX_VALUE};
        int count[] = new int[color.length];
        Arrays.fill(count, 0);

        for (int i = 0; i < n; i++) {
            for (int j = 0; j < color.length; j++) {
                if (a[i] < color[j]) {
                    count[j]++;
                    break;
                }
            }
        }

        int c = 0;
        for (int i = 0; i < count.length - 1; i++) {
            if (count[i] != 0) {
                c++;
            }
        }

        int mn = Math.max(1, c);
        int mx = c + count[count.length - 1];

        System.out.println(mn + " " + mx);
        
    }
} Main public static void main(String[] args) {
        Scanner in = new Scanner(System.in);
        int n = in.nextInt();
        int a[] = new int[n];
        for (int i = 0; i < n; i++) {
            a[i] = in.nextInt();
        }

        int color[] = {400, 800, 1200, 1600, 2000, 2400, 2800, 3200, Integer.MAX_VALUE};
        int count[] = new int[color.length];
        Arrays.fill(count, 0);

        for (int i = 0; i < n; i++) {
            for (int j = 0; j < color.length; j++) {
                if (a[i] < color[j]) {
                    count[j]++;
                    break;
                }
            }
        }

        int c = 0;
        for (int i = 0; i < count.length - 1; i++) {
            if (count[i] != 0) {
                c++;
            }
        }

        int mn = Math.max(1, c);
        int mx = c + count[count.length - 1];

        System.out.println(mn + " " + mx);
        
    } main {
        Scanner in = new Scanner(System.in);
        int n = in.nextInt();
        int a[] = new int[n];
        for (int i = 0; i < n; i++) {
            a[i] = in.nextInt();
        }

        int color[] = {400, 800, 1200, 1600, 2000, 2400, 2800, 3200, Integer.MAX_VALUE};
        int count[] = new int[color.length];
        Arrays.fill(count, 0);

        for (int i = 0; i < n; i++) {
            for (int j = 0; j < color.length; j++) {
                if (a[i] < color[j]) {
                    count[j]++;
                    break;
                }
            }
        }

        int c = 0;
        for (int i = 0; i < count.length - 1; i++) {
            if (count[i] != 0) {
                c++;
            }
        }

        int mn = Math.max(1, c);
        int mx = c + count[count.length - 1];

        System.out.println(mn + " " + mx);
        
    } Scanner in = new Scanner(System.in); in new Scanner(System.in) int n = in.nextInt(); n in.nextInt() in.nextInt in int a[] = new int[n]; a new int[n] n for (int i = 0; i < n; i++) {
            a[i] = in.nextInt();
        } int i = 0; int i = 0; i 0 i < n i n i++ i++ i {
            a[i] = in.nextInt();
        } {
            a[i] = in.nextInt();
        } a[i] = in.nextInt() a[i] a i in.nextInt() in.nextInt in int color[] = {400, 800, 1200, 1600, 2000, 2400, 2800, 3200, Integer.MAX_VALUE}; color {400, 800, 1200, 1600, 2000, 2400, 2800, 3200, Integer.MAX_VALUE} 400 800 1200 1600 2000 2400 2800 3200 Integer.MAX_VALUE Integer Integer.MAX_VALUE int count[] = new int[color.length]; count new int[color.length] color.length color color.length Arrays.fill(count, 0) Arrays.fill Arrays count 0 for (int i = 0; i < n; i++) {
            for (int j = 0; j < color.length; j++) {
                if (a[i] < color[j]) {
                    count[j]++;
                    break;
                }
            }
        } int i = 0; int i = 0; i 0 i < n i n i++ i++ i {
            for (int j = 0; j < color.length; j++) {
                if (a[i] < color[j]) {
                    count[j]++;
                    break;
                }
            }
        } {
            for (int j = 0; j < color.length; j++) {
                if (a[i] < color[j]) {
                    count[j]++;
                    break;
                }
            }
        } for (int j = 0; j < color.length; j++) {
                if (a[i] < color[j]) {
                    count[j]++;
                    break;
                }
            } int j = 0; int j = 0; j 0 j < color.length j color.length color color.length j++ j++ j {
                if (a[i] < color[j]) {
                    count[j]++;
                    break;
                }
            } {
                if (a[i] < color[j]) {
                    count[j]++;
                    break;
                }
            } if (a[i] < color[j]) {
                    count[j]++;
                    break;
                } a[i] < color[j] a[i] a i color[j] color j {
                    count[j]++;
                    break;
                } count[j]++ count[j] count j break; int c = 0; c 0 for (int i = 0; i < count.length - 1; i++) {
            if (count[i] != 0) {
                c++;
            }
        } int i = 0; int i = 0; i 0 i < count.length - 1 i count.length - 1 count.length count count.length 1 i++ i++ i {
            if (count[i] != 0) {
                c++;
            }
        } {
            if (count[i] != 0) {
                c++;
            }
        } if (count[i] != 0) {
                c++;
            } count[i] != 0 count[i] count i 0 {
                c++;
            } c++ c int mn = Math.max(1, c); mn Math.max(1, c) Math.max Math 1 c int mx = c + count[count.length - 1]; mx c + count[count.length - 1] c count[count.length - 1] count count.length - 1 count.length count count.length 1 System.out.println(mn + " " + mx) System.out.println System.out System System.out mn + " " + mx mn + " " + mx mn " " mx String[] args args public class Main {
    public static void main(String[] args) {
        Scanner in = new Scanner(System.in);
        int n = in.nextInt();
        int a[] = new int[n];
        for (int i = 0; i < n; i++) {
            a[i] = in.nextInt();
        }

        int color[] = {400, 800, 1200, 1600, 2000, 2400, 2800, 3200, Integer.MAX_VALUE};
        int count[] = new int[color.length];
        Arrays.fill(count, 0);

        for (int i = 0; i < n; i++) {
            for (int j = 0; j < color.length; j++) {
                if (a[i] < color[j]) {
                    count[j]++;
                    break;
                }
            }
        }

        int c = 0;
        for (int i = 0; i < count.length - 1; i++) {
            if (count[i] != 0) {
                c++;
            }
        }

        int mn = Math.max(1, c);
        int mx = c + count[count.length - 1];

        System.out.println(mn + " " + mx);
        
    }
} public class Main {
    public static void main(String[] args) {
        Scanner in = new Scanner(System.in);
        int n = in.nextInt();
        int a[] = new int[n];
        for (int i = 0; i < n; i++) {
            a[i] = in.nextInt();
        }

        int color[] = {400, 800, 1200, 1600, 2000, 2400, 2800, 3200, Integer.MAX_VALUE};
        int count[] = new int[color.length];
        Arrays.fill(count, 0);

        for (int i = 0; i < n; i++) {
            for (int j = 0; j < color.length; j++) {
                if (a[i] < color[j]) {
                    count[j]++;
                    break;
                }
            }
        }

        int c = 0;
        for (int i = 0; i < count.length - 1; i++) {
            if (count[i] != 0) {
                c++;
            }
        }

        int mn = Math.max(1, c);
        int mx = c + count[count.length - 1];

        System.out.println(mn + " " + mx);
        
    }
} Main
import java.util.Arrays;
import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        Scanner in = new Scanner(System.in);
        int n = in.nextInt();
        int a[] = new int[n];
        for (int i = 0; i < n; i++) {
            a[i] = in.nextInt();
        }

        int color[] = {400, 800, 1200, 1600, 2000, 2400, 2800, 3200, Integer.MAX_VALUE};
        int count[] = new int[color.length];
        Arrays.fill(count, 0);

        for (int i = 0; i < n; i++) {
            for (int j = 0; j < color.length; j++) {
                if (a[i] < color[j]) {
                    count[j]++;
                    break;
                }
            }
        }

        int c = 0;
        for (int i = 0; i < count.length - 1; i++) {
            if (count[i] != 0) {
                c++;
            }
        }

        int mn = Math.max(1, c);
        int mx = c + count[count.length - 1];

        System.out.println(mn + " " + mx);
        
    }
}
