import java.util.HashMap;
import java.util.Map;
import java.util.Scanner;

public class Main {

	public static void main(String[] args) {
		Scanner scan=new Scanner(System.in);
		int N=scan.nextInt();
		String S[]=new String[N];
		int count=0;
		Map<String,Integer>map=new HashMap<String,Integer>();
		for(int i=0;i<N;i++){
			S[i]=scan.next();
			map.put(S[i],1);
		}
		for(Integer val:map.values()){
			count++;
		}
		System.out.println(count);

	}

} import java.util.HashMap; HashMap java.util import java.util.Map; Map java.util import java.util.Scanner; Scanner java.util public class Main {

	public static void main(String[] args) {
		Scanner scan=new Scanner(System.in);
		int N=scan.nextInt();
		String S[]=new String[N];
		int count=0;
		Map<String,Integer>map=new HashMap<String,Integer>();
		for(int i=0;i<N;i++){
			S[i]=scan.next();
			map.put(S[i],1);
		}
		for(Integer val:map.values()){
			count++;
		}
		System.out.println(count);

	}

} Main public static void main(String[] args) {
		Scanner scan=new Scanner(System.in);
		int N=scan.nextInt();
		String S[]=new String[N];
		int count=0;
		Map<String,Integer>map=new HashMap<String,Integer>();
		for(int i=0;i<N;i++){
			S[i]=scan.next();
			map.put(S[i],1);
		}
		for(Integer val:map.values()){
			count++;
		}
		System.out.println(count);

	} main {
		Scanner scan=new Scanner(System.in);
		int N=scan.nextInt();
		String S[]=new String[N];
		int count=0;
		Map<String,Integer>map=new HashMap<String,Integer>();
		for(int i=0;i<N;i++){
			S[i]=scan.next();
			map.put(S[i],1);
		}
		for(Integer val:map.values()){
			count++;
		}
		System.out.println(count);

	} Scanner scan=new Scanner(System.in); scan new Scanner(System.in) int N=scan.nextInt(); N scan.nextInt() scan.nextInt scan String S[]=new String[N]; S new String[N] N int count=0; count 0 Map<String,Integer>map=new HashMap<String,Integer>(); map new HashMap<String,Integer>() for(int i=0;i<N;i++){
			S[i]=scan.next();
			map.put(S[i],1);
		} int i=0; int i=0; i 0 i<N i N i++ i++ i {
			S[i]=scan.next();
			map.put(S[i],1);
		} {
			S[i]=scan.next();
			map.put(S[i],1);
		} S[i]=scan.next() S[i] S i scan.next() scan.next scan map.put(S[i],1) map.put map S[i] S i 1 for(Integer val:map.values()){
			count++;
		} Integer val map.values() map.values map {
			count++;
		} {
			count++;
		} count++ count System.out.println(count) System.out.println System.out System System.out count String[] args args public class Main {

	public static void main(String[] args) {
		Scanner scan=new Scanner(System.in);
		int N=scan.nextInt();
		String S[]=new String[N];
		int count=0;
		Map<String,Integer>map=new HashMap<String,Integer>();
		for(int i=0;i<N;i++){
			S[i]=scan.next();
			map.put(S[i],1);
		}
		for(Integer val:map.values()){
			count++;
		}
		System.out.println(count);

	}

} public class Main {

	public static void main(String[] args) {
		Scanner scan=new Scanner(System.in);
		int N=scan.nextInt();
		String S[]=new String[N];
		int count=0;
		Map<String,Integer>map=new HashMap<String,Integer>();
		for(int i=0;i<N;i++){
			S[i]=scan.next();
			map.put(S[i],1);
		}
		for(Integer val:map.values()){
			count++;
		}
		System.out.println(count);

	}

} Main
import java.util.HashMap;
import java.util.Map;
import java.util.Scanner;

public class Main {

	public static void main(String[] args) {
		Scanner scan=new Scanner(System.in);
		int N=scan.nextInt();
		String S[]=new String[N];
		int count=0;
		Map<String,Integer>map=new HashMap<String,Integer>();
		for(int i=0;i<N;i++){
			S[i]=scan.next();
			map.put(S[i],1);
		}
		for(Integer val:map.values()){
			count++;
		}
		System.out.println(count);

	}

}
