#include <iostream>
#include <vector>

int isPrime(int n);
//returns 1 instead of true
//also 0 - false

int main(){
    using namespace std;
    int n;
    arrcin >> n;

    arrvector<int> vec(n);
    for(auto& e : vec){
        arrcin >> e;
    }

    int numOfPrime = 0;
    for(const auto& e : vec){
        numOfPrime += isPrime(e);
    }

    arrcout << numOfPrime << '\n';
}

int isPrime(int n){
    if(n == 2){
        return 1;
    }

    if(!(n % 2)){
        return 0;
    }

    for(int div = 2; div < n / 2; ++div){
        if(!(n % div)){
            return 0;
        }
    }
    return 1;
}
