import java.util.ArrayList;
import java.util.List;
import java.util.Scanner;
import java.util.stream.Collectors;

public class Main {

	public static void main(String[] args) {
		// TODO 自動生成されたメソッド・スタブ

		Scanner sc = new Scanner(System.in);

		//入力表示
			int N = sc.nextInt();
			
			List<String> list = new ArrayList<String>();
			
			for(int i=0;i<N;i++) {
			list.add(sc.next());
			}
			
			List<String> ans = list.stream().distinct().collect(Collectors.toList());

			System.out.println(ans.size());
	}
} import java.util.ArrayList; ArrayList java.util import java.util.List; List java.util import java.util.Scanner; Scanner java.util import java.util.stream.Collectors; Collectors java.util.stream public class Main {

	public static void main(String[] args) {
		// TODO 自動生成されたメソッド・スタブ

		Scanner sc = new Scanner(System.in);

		//入力表示
			int N = sc.nextInt();
			
			List<String> list = new ArrayList<String>();
			
			for(int i=0;i<N;i++) {
			list.add(sc.next());
			}
			
			List<String> ans = list.stream().distinct().collect(Collectors.toList());

			System.out.println(ans.size());
	}
} Main public static void main(String[] args) {
		// TODO 自動生成されたメソッド・スタブ

		Scanner sc = new Scanner(System.in);

		//入力表示
			int N = sc.nextInt();
			
			List<String> list = new ArrayList<String>();
			
			for(int i=0;i<N;i++) {
			list.add(sc.next());
			}
			
			List<String> ans = list.stream().distinct().collect(Collectors.toList());

			System.out.println(ans.size());
	} main {
		// TODO 自動生成されたメソッド・スタブ

		Scanner sc = new Scanner(System.in);

		//入力表示
			int N = sc.nextInt();
			
			List<String> list = new ArrayList<String>();
			
			for(int i=0;i<N;i++) {
			list.add(sc.next());
			}
			
			List<String> ans = list.stream().distinct().collect(Collectors.toList());

			System.out.println(ans.size());
	} Scanner sc = new Scanner(System.in); sc new Scanner(System.in) int N = sc.nextInt(); N sc.nextInt() sc.nextInt sc List<String> list = new ArrayList<String>(); list new ArrayList<String>() for(int i=0;i<N;i++) {
			list.add(sc.next());
			} int i=0; int i=0; i 0 i<N i N i++ i++ i {
			list.add(sc.next());
			} {
			list.add(sc.next());
			} list.add(sc.next()) list.add list sc.next() sc.next sc List<String> ans = list.stream().distinct().collect(Collectors.toList()); ans list.stream().distinct().collect(Collectors.toList()) list.stream().distinct().collect list.stream().distinct() list.stream().distinct list.stream() list.stream list Collectors.toList() Collectors.toList Collectors System.out.println(ans.size()) System.out.println System.out System System.out ans.size() ans.size ans String[] args args public class Main {

	public static void main(String[] args) {
		// TODO 自動生成されたメソッド・スタブ

		Scanner sc = new Scanner(System.in);

		//入力表示
			int N = sc.nextInt();
			
			List<String> list = new ArrayList<String>();
			
			for(int i=0;i<N;i++) {
			list.add(sc.next());
			}
			
			List<String> ans = list.stream().distinct().collect(Collectors.toList());

			System.out.println(ans.size());
	}
} public class Main {

	public static void main(String[] args) {
		// TODO 自動生成されたメソッド・スタブ

		Scanner sc = new Scanner(System.in);

		//入力表示
			int N = sc.nextInt();
			
			List<String> list = new ArrayList<String>();
			
			for(int i=0;i<N;i++) {
			list.add(sc.next());
			}
			
			List<String> ans = list.stream().distinct().collect(Collectors.toList());

			System.out.println(ans.size());
	}
} Main
import java.util.ArrayList;
import java.util.List;
import java.util.Scanner;
import java.util.stream.Collectors;

public class Main {

	public static void main(String[] args) {
		// TODO 自動生成されたメソッド・スタブ

		Scanner sc = new Scanner(System.in);

		//入力表示
			int N = sc.nextInt();
			
			List<String> list = new ArrayList<String>();
			
			for(int i=0;i<N;i++) {
			list.add(sc.next());
			}
			
			List<String> ans = list.stream().distinct().collect(Collectors.toList());

			System.out.println(ans.size());
	}
}