import java.util.HashSet;
import java.util.Scanner;
import java.util.Set;

public class Main {

	public static void main(String args[]) {

		Scanner sc = new Scanner(System.in);
		int N = sc.nextInt();
		int allnum = 0;

		Set<String> colorset = new HashSet<>();
		for(int i=0;i<N;i++) {
			int a = sc.nextInt();
			String c = color(a);

			if(c.equals("all")) {
				allnum++;
			}else{
				colorset.add(c);
			}
		}

		int min = colorset.size()==0 ? 1 : colorset.size();
		int max = colorset.size()==0 ? allnum : min + allnum;
		System.out.println(min + " " + max);
	}

	public static String color(int rate) {
		if(rate < 400) {
			return "gray";
		}else if(rate < 800) {
			return "brown";
		}else if(rate < 1200) {
			return "green";
		}else if(rate < 1600) {
			return "skyblue";
		}else if(rate < 2000) {
			return "blue";
		}else if(rate < 2400) {
			return "yellow";
		}else if(rate < 2800) {
			return "orange";
		}else if(rate < 3200) {
			return "red";
		}else {
			return "all";
		}
	}
} import java.util.HashSet; HashSet java.util import java.util.Scanner; Scanner java.util import java.util.Set; Set java.util public class Main {

	public static void main(String args[]) {

		Scanner sc = new Scanner(System.in);
		int N = sc.nextInt();
		int allnum = 0;

		Set<String> colorset = new HashSet<>();
		for(int i=0;i<N;i++) {
			int a = sc.nextInt();
			String c = color(a);

			if(c.equals("all")) {
				allnum++;
			}else{
				colorset.add(c);
			}
		}

		int min = colorset.size()==0 ? 1 : colorset.size();
		int max = colorset.size()==0 ? allnum : min + allnum;
		System.out.println(min + " " + max);
	}

	public static String color(int rate) {
		if(rate < 400) {
			return "gray";
		}else if(rate < 800) {
			return "brown";
		}else if(rate < 1200) {
			return "green";
		}else if(rate < 1600) {
			return "skyblue";
		}else if(rate < 2000) {
			return "blue";
		}else if(rate < 2400) {
			return "yellow";
		}else if(rate < 2800) {
			return "orange";
		}else if(rate < 3200) {
			return "red";
		}else {
			return "all";
		}
	}
} Main public static void main(String args[]) {

		Scanner sc = new Scanner(System.in);
		int N = sc.nextInt();
		int allnum = 0;

		Set<String> colorset = new HashSet<>();
		for(int i=0;i<N;i++) {
			int a = sc.nextInt();
			String c = color(a);

			if(c.equals("all")) {
				allnum++;
			}else{
				colorset.add(c);
			}
		}

		int min = colorset.size()==0 ? 1 : colorset.size();
		int max = colorset.size()==0 ? allnum : min + allnum;
		System.out.println(min + " " + max);
	} main {

		Scanner sc = new Scanner(System.in);
		int N = sc.nextInt();
		int allnum = 0;

		Set<String> colorset = new HashSet<>();
		for(int i=0;i<N;i++) {
			int a = sc.nextInt();
			String c = color(a);

			if(c.equals("all")) {
				allnum++;
			}else{
				colorset.add(c);
			}
		}

		int min = colorset.size()==0 ? 1 : colorset.size();
		int max = colorset.size()==0 ? allnum : min + allnum;
		System.out.println(min + " " + max);
	} Scanner sc = new Scanner(System.in); sc new Scanner(System.in) int N = sc.nextInt(); N sc.nextInt() sc.nextInt sc int allnum = 0; allnum 0 Set<String> colorset = new HashSet<>(); colorset new HashSet<>() for(int i=0;i<N;i++) {
			int a = sc.nextInt();
			String c = color(a);

			if(c.equals("all")) {
				allnum++;
			}else{
				colorset.add(c);
			}
		} int i=0; int i=0; i 0 i<N i N i++ i++ i {
			int a = sc.nextInt();
			String c = color(a);

			if(c.equals("all")) {
				allnum++;
			}else{
				colorset.add(c);
			}
		} {
			int a = sc.nextInt();
			String c = color(a);

			if(c.equals("all")) {
				allnum++;
			}else{
				colorset.add(c);
			}
		} int a = sc.nextInt(); a sc.nextInt() sc.nextInt sc String c = color(a); c color(a) color a if(c.equals("all")) {
				allnum++;
			}else{
				colorset.add(c);
			} c.equals("all") c.equals c "all" {
				allnum++;
			} allnum++ allnum {
				colorset.add(c);
			} colorset.add(c) colorset.add colorset c int min = colorset.size()==0 ? 1 : colorset.size(); min colorset.size()==0 ? 1 : colorset.size() colorset.size()==0 colorset.size() colorset.size colorset 0 1 colorset.size() colorset.size colorset int max = colorset.size()==0 ? allnum : min + allnum; max colorset.size()==0 ? allnum : min + allnum colorset.size()==0 colorset.size() colorset.size colorset 0 allnum min + allnum min allnum System.out.println(min + " " + max) System.out.println System.out System System.out min + " " + max min + " " + max min " " max String args[] args public static String color(int rate) {
		if(rate < 400) {
			return "gray";
		}else if(rate < 800) {
			return "brown";
		}else if(rate < 1200) {
			return "green";
		}else if(rate < 1600) {
			return "skyblue";
		}else if(rate < 2000) {
			return "blue";
		}else if(rate < 2400) {
			return "yellow";
		}else if(rate < 2800) {
			return "orange";
		}else if(rate < 3200) {
			return "red";
		}else {
			return "all";
		}
	} color {
		if(rate < 400) {
			return "gray";
		}else if(rate < 800) {
			return "brown";
		}else if(rate < 1200) {
			return "green";
		}else if(rate < 1600) {
			return "skyblue";
		}else if(rate < 2000) {
			return "blue";
		}else if(rate < 2400) {
			return "yellow";
		}else if(rate < 2800) {
			return "orange";
		}else if(rate < 3200) {
			return "red";
		}else {
			return "all";
		}
	} if(rate < 400) {
			return "gray";
		}else if(rate < 800) {
			return "brown";
		}else if(rate < 1200) {
			return "green";
		}else if(rate < 1600) {
			return "skyblue";
		}else if(rate < 2000) {
			return "blue";
		}else if(rate < 2400) {
			return "yellow";
		}else if(rate < 2800) {
			return "orange";
		}else if(rate < 3200) {
			return "red";
		}else {
			return "all";
		} rate < 400 rate 400 {
			return "gray";
		} return "gray"; "gray" if(rate < 800) {
			return "brown";
		}else if(rate < 1200) {
			return "green";
		}else if(rate < 1600) {
			return "skyblue";
		}else if(rate < 2000) {
			return "blue";
		}else if(rate < 2400) {
			return "yellow";
		}else if(rate < 2800) {
			return "orange";
		}else if(rate < 3200) {
			return "red";
		}else {
			return "all";
		} rate < 800 rate 800 {
			return "brown";
		} return "brown"; "brown" if(rate < 1200) {
			return "green";
		}else if(rate < 1600) {
			return "skyblue";
		}else if(rate < 2000) {
			return "blue";
		}else if(rate < 2400) {
			return "yellow";
		}else if(rate < 2800) {
			return "orange";
		}else if(rate < 3200) {
			return "red";
		}else {
			return "all";
		} rate < 1200 rate 1200 {
			return "green";
		} return "green"; "green" if(rate < 1600) {
			return "skyblue";
		}else if(rate < 2000) {
			return "blue";
		}else if(rate < 2400) {
			return "yellow";
		}else if(rate < 2800) {
			return "orange";
		}else if(rate < 3200) {
			return "red";
		}else {
			return "all";
		} rate < 1600 rate 1600 {
			return "skyblue";
		} return "skyblue"; "skyblue" if(rate < 2000) {
			return "blue";
		}else if(rate < 2400) {
			return "yellow";
		}else if(rate < 2800) {
			return "orange";
		}else if(rate < 3200) {
			return "red";
		}else {
			return "all";
		} rate < 2000 rate 2000 {
			return "blue";
		} return "blue"; "blue" if(rate < 2400) {
			return "yellow";
		}else if(rate < 2800) {
			return "orange";
		}else if(rate < 3200) {
			return "red";
		}else {
			return "all";
		} rate < 2400 rate 2400 {
			return "yellow";
		} return "yellow"; "yellow" if(rate < 2800) {
			return "orange";
		}else if(rate < 3200) {
			return "red";
		}else {
			return "all";
		} rate < 2800 rate 2800 {
			return "orange";
		} return "orange"; "orange" if(rate < 3200) {
			return "red";
		}else {
			return "all";
		} rate < 3200 rate 3200 {
			return "red";
		} return "red"; "red" {
			return "all";
		} return "all"; "all" int rate rate public class Main {

	public static void main(String args[]) {

		Scanner sc = new Scanner(System.in);
		int N = sc.nextInt();
		int allnum = 0;

		Set<String> colorset = new HashSet<>();
		for(int i=0;i<N;i++) {
			int a = sc.nextInt();
			String c = color(a);

			if(c.equals("all")) {
				allnum++;
			}else{
				colorset.add(c);
			}
		}

		int min = colorset.size()==0 ? 1 : colorset.size();
		int max = colorset.size()==0 ? allnum : min + allnum;
		System.out.println(min + " " + max);
	}

	public static String color(int rate) {
		if(rate < 400) {
			return "gray";
		}else if(rate < 800) {
			return "brown";
		}else if(rate < 1200) {
			return "green";
		}else if(rate < 1600) {
			return "skyblue";
		}else if(rate < 2000) {
			return "blue";
		}else if(rate < 2400) {
			return "yellow";
		}else if(rate < 2800) {
			return "orange";
		}else if(rate < 3200) {
			return "red";
		}else {
			return "all";
		}
	}
} public class Main {

	public static void main(String args[]) {

		Scanner sc = new Scanner(System.in);
		int N = sc.nextInt();
		int allnum = 0;

		Set<String> colorset = new HashSet<>();
		for(int i=0;i<N;i++) {
			int a = sc.nextInt();
			String c = color(a);

			if(c.equals("all")) {
				allnum++;
			}else{
				colorset.add(c);
			}
		}

		int min = colorset.size()==0 ? 1 : colorset.size();
		int max = colorset.size()==0 ? allnum : min + allnum;
		System.out.println(min + " " + max);
	}

	public static String color(int rate) {
		if(rate < 400) {
			return "gray";
		}else if(rate < 800) {
			return "brown";
		}else if(rate < 1200) {
			return "green";
		}else if(rate < 1600) {
			return "skyblue";
		}else if(rate < 2000) {
			return "blue";
		}else if(rate < 2400) {
			return "yellow";
		}else if(rate < 2800) {
			return "orange";
		}else if(rate < 3200) {
			return "red";
		}else {
			return "all";
		}
	}
} Main
import java.util.HashSet;
import java.util.Scanner;
import java.util.Set;

public class Main {

	public static void main(String args[]) {

		Scanner sc = new Scanner(System.in);
		int N = sc.nextInt();
		int allnum = 0;

		Set<String> colorset = new HashSet<>();
		for(int i=0;i<N;i++) {
			int a = sc.nextInt();
			String c = color(a);

			if(c.equals("all")) {
				allnum++;
			}else{
				colorset.add(c);
			}
		}

		int min = colorset.size()==0 ? 1 : colorset.size();
		int max = colorset.size()==0 ? allnum : min + allnum;
		System.out.println(min + " " + max);
	}

	public static String color(int rate) {
		if(rate < 400) {
			return "gray";
		}else if(rate < 800) {
			return "brown";
		}else if(rate < 1200) {
			return "green";
		}else if(rate < 1600) {
			return "skyblue";
		}else if(rate < 2000) {
			return "blue";
		}else if(rate < 2400) {
			return "yellow";
		}else if(rate < 2800) {
			return "orange";
		}else if(rate < 3200) {
			return "red";
		}else {
			return "all";
		}
	}
}
