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 Scala (judge verdict: Runtime Error)

import scala.io.StdIn

object Main {
  var dp:Array[Boolean] = Array.fill(10001)(true)
  def makePrimeTable(){
    dp(0) = false;
    dp(1) = false;
    for(i <- 2 to 10000){
      dp(i) match {
        case true => (i + i to 10000 by i).toList.foreach(x => dp(x) = false)
        case _ =>
      }
    }
  }

  def main(args: Array[String]){
    makePrimeTable()
    val N = StdIn.readInt()
    var res = 0
    for(i <- 0 to N - 1){
      val num = StdIn.readInt()
      if(dp(num)){
        res = res + 1
      }
    }
    println(res)
  }
}