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: Accepted)

import scala.io.StdIn._

object Main {
  var map: Map[Int, Boolean] = Map.empty[Int, Boolean]

  def main(args: Array[String]): Unit = {
    val n = readInt
    if (n == 0) return
    val list = readIntList(n)
    val count = list.count(isPrimeNumber)
    println(count)
  }

  def readIntList(n: Int): List[Int] = {
    var list: Array[Int] = Array.empty
    for (i <- 0 until n) {
      list :+= readInt
    }
    list.toList
  }

  def isPrimeNumber(value: Int): Boolean = {
    if (value < 2) false
    else if (value == 2) true
    else if (value % 2 == 0) false
    else {
      val sqrt = Math.sqrt(value).toInt
      for (i <- 3 to sqrt by 2) {
        if (value % i == 0) {
          return false
        }
      }

      true
    }
  }
}