Problem:
Prime Numbers

A prime number is a natural number which has exactly two distinct natural number divisors: 1 and itself. For example, the first four prime numbers are: 2, 3, 5 and 7.

Write a program which reads a list of N integers and prints the number of prime numbers in the list.

Input

The first line contains an integer N, the number of elements in the list.

N numbers are given in the following lines.

Output

Print the number of prime numbers in the given list.

Constraints

1 ≤ N ≤ 10000

2 ≤ an element of the list ≤ 108

Sample Input 1

5
2
3
4
5
6

Sample Output 1

3

Sample Input 2

11
7
8
9
10
11
12
13
14
15
16
17

Sample Output 2

4

Solution in JAVA (judge verdict: Accepted)

import java.util.*;

public class Main {
  public static void main(String[] args) {
    @SuppressWarnings("resource")
    Scanner sc = new Scanner(System.in);
    int n = sc.nextInt();
    int cnt = 0;

    for (int i = 0; i < n; i++) {
      cnt = isPrime(sc.nextInt()) ? cnt + 1 : cnt;
    }
    System.out.println(cnt);
  }

  static boolean isPrime(int x) {
    if (x == 2)
      return true;
    if (x < 2 || x % 2 == 0)
      return false;

    // 合成数xはp<=sqrt x を満たす素因子pを持つ
    int sqrt = (int) Math.sqrt((double) x);
    for (int i = 3; i <= sqrt; i = i + 2) {
      if (x % i == 0)
        return false;
    }
    return true;
  }
}