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 Python3 (judge verdict: Accepted)

import math

def readinput():
    n=int(input())
    a=[]
    for i in range(n):
        a.append(int(input()))
    return n,a

def isPrime(n):
    if n==2:
        return True

    if n<=1 or n%2==0:
        return False

    m = int(math.sqrt(n))+1
    for i in range(3,m,2):
        if n % i == 0:
            return False
    return True

def getPrimes(n):
    '''n以下の素数のリストを返す'''
    p=[]
    for i in range(2,n+1):
        if isPrime(i):
            p.append(i)
    return p

def main(n,a):
    m=max(a)
    p=getPrimes(m)
    cnt=0
    for _ in a:
        if _ in p:
            cnt+=1
    return cnt

if __name__=='__main__':
    #n,a=readinput()
    #ans=main(n,a)
    n=int(input())
    cnt=0
    for i in range(n):
        x = int(input())
        if isPrime(x):
            cnt+=1
    print(cnt)