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

public class Main {

	public static void main(String[] args) {

		Scanner in = new Scanner(System.in);
		int n = in.nextInt();
		Set<Integer> colors = new HashSet<>();
		int allCount = 0;
		for (int i = 0; i < n; i++) {
			int color = calcColor(in.nextInt());
			if (color == 100) {
				allCount += 1;
			} else if (color < 100) {
				colors.add(color);
			}
		}
		System.out.println(Math.max(colors.size(), 1) + " " + (colors.size()+allCount));

	}
	static int calcColor(int rate) {
		int color = Integer.MAX_VALUE;
		if (1 <= rate && rate <= 399) {
			color = 1;
		} else if (400 <= rate && rate <= 799) {
			color = 2;
		} else if (800 <= rate && rate <= 1199) {
			color = 3;
		} else if (1200 <= rate && rate <= 1599) {
			color = 4;
		} else if (1600 <= rate && rate <= 1999) {
			color = 5;
		} else if (2000 <= rate && rate <= 2399) {
			color = 6;
		} else if (2400 <= rate && rate <= 2799) {
			color = 7;
		} else if (2800 <= rate && rate <= 3199) {
			color = 8;
		} else {
			color = 100;
		}
		return color;
	}

} 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 in = new Scanner(System.in);
		int n = in.nextInt();
		Set<Integer> colors = new HashSet<>();
		int allCount = 0;
		for (int i = 0; i < n; i++) {
			int color = calcColor(in.nextInt());
			if (color == 100) {
				allCount += 1;
			} else if (color < 100) {
				colors.add(color);
			}
		}
		System.out.println(Math.max(colors.size(), 1) + " " + (colors.size()+allCount));

	}
	static int calcColor(int rate) {
		int color = Integer.MAX_VALUE;
		if (1 <= rate && rate <= 399) {
			color = 1;
		} else if (400 <= rate && rate <= 799) {
			color = 2;
		} else if (800 <= rate && rate <= 1199) {
			color = 3;
		} else if (1200 <= rate && rate <= 1599) {
			color = 4;
		} else if (1600 <= rate && rate <= 1999) {
			color = 5;
		} else if (2000 <= rate && rate <= 2399) {
			color = 6;
		} else if (2400 <= rate && rate <= 2799) {
			color = 7;
		} else if (2800 <= rate && rate <= 3199) {
			color = 8;
		} else {
			color = 100;
		}
		return color;
	}

} Main public static void main(String[] args) {

		Scanner in = new Scanner(System.in);
		int n = in.nextInt();
		Set<Integer> colors = new HashSet<>();
		int allCount = 0;
		for (int i = 0; i < n; i++) {
			int color = calcColor(in.nextInt());
			if (color == 100) {
				allCount += 1;
			} else if (color < 100) {
				colors.add(color);
			}
		}
		System.out.println(Math.max(colors.size(), 1) + " " + (colors.size()+allCount));

	} main {

		Scanner in = new Scanner(System.in);
		int n = in.nextInt();
		Set<Integer> colors = new HashSet<>();
		int allCount = 0;
		for (int i = 0; i < n; i++) {
			int color = calcColor(in.nextInt());
			if (color == 100) {
				allCount += 1;
			} else if (color < 100) {
				colors.add(color);
			}
		}
		System.out.println(Math.max(colors.size(), 1) + " " + (colors.size()+allCount));

	} Scanner in = new Scanner(System.in); in new Scanner(System.in) int n = in.nextInt(); n in.nextInt() in.nextInt in Set<Integer> colors = new HashSet<>(); colors new HashSet<>() int allCount = 0; allCount 0 for (int i = 0; i < n; i++) {
			int color = calcColor(in.nextInt());
			if (color == 100) {
				allCount += 1;
			} else if (color < 100) {
				colors.add(color);
			}
		} int i = 0; int i = 0; i 0 i < n i n i++ i++ i {
			int color = calcColor(in.nextInt());
			if (color == 100) {
				allCount += 1;
			} else if (color < 100) {
				colors.add(color);
			}
		} {
			int color = calcColor(in.nextInt());
			if (color == 100) {
				allCount += 1;
			} else if (color < 100) {
				colors.add(color);
			}
		} int color = calcColor(in.nextInt()); color calcColor(in.nextInt()) calcColor in.nextInt() in.nextInt in if (color == 100) {
				allCount += 1;
			} else if (color < 100) {
				colors.add(color);
			} color == 100 color 100 {
				allCount += 1;
			} allCount += 1 allCount 1 if (color < 100) {
				colors.add(color);
			} color < 100 color 100 {
				colors.add(color);
			} colors.add(color) colors.add colors color System.out.println(Math.max(colors.size(), 1) + " " + (colors.size()+allCount)) System.out.println System.out System System.out Math.max(colors.size(), 1) + " " + (colors.size()+allCount) Math.max(colors.size(), 1) + " " + (colors.size()+allCount) Math.max(colors.size(), 1) Math.max Math colors.size() colors.size colors 1 " " (colors.size()+allCount) colors.size() colors.size colors allCount String[] args args static int calcColor(int rate) {
		int color = Integer.MAX_VALUE;
		if (1 <= rate && rate <= 399) {
			color = 1;
		} else if (400 <= rate && rate <= 799) {
			color = 2;
		} else if (800 <= rate && rate <= 1199) {
			color = 3;
		} else if (1200 <= rate && rate <= 1599) {
			color = 4;
		} else if (1600 <= rate && rate <= 1999) {
			color = 5;
		} else if (2000 <= rate && rate <= 2399) {
			color = 6;
		} else if (2400 <= rate && rate <= 2799) {
			color = 7;
		} else if (2800 <= rate && rate <= 3199) {
			color = 8;
		} else {
			color = 100;
		}
		return color;
	} calcColor {
		int color = Integer.MAX_VALUE;
		if (1 <= rate && rate <= 399) {
			color = 1;
		} else if (400 <= rate && rate <= 799) {
			color = 2;
		} else if (800 <= rate && rate <= 1199) {
			color = 3;
		} else if (1200 <= rate && rate <= 1599) {
			color = 4;
		} else if (1600 <= rate && rate <= 1999) {
			color = 5;
		} else if (2000 <= rate && rate <= 2399) {
			color = 6;
		} else if (2400 <= rate && rate <= 2799) {
			color = 7;
		} else if (2800 <= rate && rate <= 3199) {
			color = 8;
		} else {
			color = 100;
		}
		return color;
	} int color = Integer.MAX_VALUE; color Integer.MAX_VALUE Integer Integer.MAX_VALUE if (1 <= rate && rate <= 399) {
			color = 1;
		} else if (400 <= rate && rate <= 799) {
			color = 2;
		} else if (800 <= rate && rate <= 1199) {
			color = 3;
		} else if (1200 <= rate && rate <= 1599) {
			color = 4;
		} else if (1600 <= rate && rate <= 1999) {
			color = 5;
		} else if (2000 <= rate && rate <= 2399) {
			color = 6;
		} else if (2400 <= rate && rate <= 2799) {
			color = 7;
		} else if (2800 <= rate && rate <= 3199) {
			color = 8;
		} else {
			color = 100;
		} 1 <= rate && rate <= 399 1 <= rate 1 rate rate <= 399 rate 399 {
			color = 1;
		} color = 1 color 1 if (400 <= rate && rate <= 799) {
			color = 2;
		} else if (800 <= rate && rate <= 1199) {
			color = 3;
		} else if (1200 <= rate && rate <= 1599) {
			color = 4;
		} else if (1600 <= rate && rate <= 1999) {
			color = 5;
		} else if (2000 <= rate && rate <= 2399) {
			color = 6;
		} else if (2400 <= rate && rate <= 2799) {
			color = 7;
		} else if (2800 <= rate && rate <= 3199) {
			color = 8;
		} else {
			color = 100;
		} 400 <= rate && rate <= 799 400 <= rate 400 rate rate <= 799 rate 799 {
			color = 2;
		} color = 2 color 2 if (800 <= rate && rate <= 1199) {
			color = 3;
		} else if (1200 <= rate && rate <= 1599) {
			color = 4;
		} else if (1600 <= rate && rate <= 1999) {
			color = 5;
		} else if (2000 <= rate && rate <= 2399) {
			color = 6;
		} else if (2400 <= rate && rate <= 2799) {
			color = 7;
		} else if (2800 <= rate && rate <= 3199) {
			color = 8;
		} else {
			color = 100;
		} 800 <= rate && rate <= 1199 800 <= rate 800 rate rate <= 1199 rate 1199 {
			color = 3;
		} color = 3 color 3 if (1200 <= rate && rate <= 1599) {
			color = 4;
		} else if (1600 <= rate && rate <= 1999) {
			color = 5;
		} else if (2000 <= rate && rate <= 2399) {
			color = 6;
		} else if (2400 <= rate && rate <= 2799) {
			color = 7;
		} else if (2800 <= rate && rate <= 3199) {
			color = 8;
		} else {
			color = 100;
		} 1200 <= rate && rate <= 1599 1200 <= rate 1200 rate rate <= 1599 rate 1599 {
			color = 4;
		} color = 4 color 4 if (1600 <= rate && rate <= 1999) {
			color = 5;
		} else if (2000 <= rate && rate <= 2399) {
			color = 6;
		} else if (2400 <= rate && rate <= 2799) {
			color = 7;
		} else if (2800 <= rate && rate <= 3199) {
			color = 8;
		} else {
			color = 100;
		} 1600 <= rate && rate <= 1999 1600 <= rate 1600 rate rate <= 1999 rate 1999 {
			color = 5;
		} color = 5 color 5 if (2000 <= rate && rate <= 2399) {
			color = 6;
		} else if (2400 <= rate && rate <= 2799) {
			color = 7;
		} else if (2800 <= rate && rate <= 3199) {
			color = 8;
		} else {
			color = 100;
		} 2000 <= rate && rate <= 2399 2000 <= rate 2000 rate rate <= 2399 rate 2399 {
			color = 6;
		} color = 6 color 6 if (2400 <= rate && rate <= 2799) {
			color = 7;
		} else if (2800 <= rate && rate <= 3199) {
			color = 8;
		} else {
			color = 100;
		} 2400 <= rate && rate <= 2799 2400 <= rate 2400 rate rate <= 2799 rate 2799 {
			color = 7;
		} color = 7 color 7 if (2800 <= rate && rate <= 3199) {
			color = 8;
		} else {
			color = 100;
		} 2800 <= rate && rate <= 3199 2800 <= rate 2800 rate rate <= 3199 rate 3199 {
			color = 8;
		} color = 8 color 8 {
			color = 100;
		} color = 100 color 100 return color; color int rate rate public class Main {

	public static void main(String[] args) {

		Scanner in = new Scanner(System.in);
		int n = in.nextInt();
		Set<Integer> colors = new HashSet<>();
		int allCount = 0;
		for (int i = 0; i < n; i++) {
			int color = calcColor(in.nextInt());
			if (color == 100) {
				allCount += 1;
			} else if (color < 100) {
				colors.add(color);
			}
		}
		System.out.println(Math.max(colors.size(), 1) + " " + (colors.size()+allCount));

	}
	static int calcColor(int rate) {
		int color = Integer.MAX_VALUE;
		if (1 <= rate && rate <= 399) {
			color = 1;
		} else if (400 <= rate && rate <= 799) {
			color = 2;
		} else if (800 <= rate && rate <= 1199) {
			color = 3;
		} else if (1200 <= rate && rate <= 1599) {
			color = 4;
		} else if (1600 <= rate && rate <= 1999) {
			color = 5;
		} else if (2000 <= rate && rate <= 2399) {
			color = 6;
		} else if (2400 <= rate && rate <= 2799) {
			color = 7;
		} else if (2800 <= rate && rate <= 3199) {
			color = 8;
		} else {
			color = 100;
		}
		return color;
	}

} public class Main {

	public static void main(String[] args) {

		Scanner in = new Scanner(System.in);
		int n = in.nextInt();
		Set<Integer> colors = new HashSet<>();
		int allCount = 0;
		for (int i = 0; i < n; i++) {
			int color = calcColor(in.nextInt());
			if (color == 100) {
				allCount += 1;
			} else if (color < 100) {
				colors.add(color);
			}
		}
		System.out.println(Math.max(colors.size(), 1) + " " + (colors.size()+allCount));

	}
	static int calcColor(int rate) {
		int color = Integer.MAX_VALUE;
		if (1 <= rate && rate <= 399) {
			color = 1;
		} else if (400 <= rate && rate <= 799) {
			color = 2;
		} else if (800 <= rate && rate <= 1199) {
			color = 3;
		} else if (1200 <= rate && rate <= 1599) {
			color = 4;
		} else if (1600 <= rate && rate <= 1999) {
			color = 5;
		} else if (2000 <= rate && rate <= 2399) {
			color = 6;
		} else if (2400 <= rate && rate <= 2799) {
			color = 7;
		} else if (2800 <= rate && rate <= 3199) {
			color = 8;
		} else {
			color = 100;
		}
		return color;
	}

} Main

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

public class Main {

	public static void main(String[] args) {

		Scanner in = new Scanner(System.in);
		int n = in.nextInt();
		Set<Integer> colors = new HashSet<>();
		int allCount = 0;
		for (int i = 0; i < n; i++) {
			int color = calcColor(in.nextInt());
			if (color == 100) {
				allCount += 1;
			} else if (color < 100) {
				colors.add(color);
			}
		}
		System.out.println(Math.max(colors.size(), 1) + " " + (colors.size()+allCount));

	}
	static int calcColor(int rate) {
		int color = Integer.MAX_VALUE;
		if (1 <= rate && rate <= 399) {
			color = 1;
		} else if (400 <= rate && rate <= 799) {
			color = 2;
		} else if (800 <= rate && rate <= 1199) {
			color = 3;
		} else if (1200 <= rate && rate <= 1599) {
			color = 4;
		} else if (1600 <= rate && rate <= 1999) {
			color = 5;
		} else if (2000 <= rate && rate <= 2399) {
			color = 6;
		} else if (2400 <= rate && rate <= 2799) {
			color = 7;
		} else if (2800 <= rate && rate <= 3199) {
			color = 8;
		} else {
			color = 100;
		}
		return color;
	}

}
