ALDS1_1_C | 素数判定
目次
# 問題
http://judge.u-aizu.ac.jp/onlinejudge/description.jsp?id=ALDS1_1_C
# 解説
# 計算量
# 解答
#define MAX_N 10001
Int N;
vector<Int> ns(MAX_N, -1);
bool isPrime(Int x) {
if (x == 1) return false;
if (x == 2) return true;
if (x % 2 == 0) return false;
Int sqrtX = Int(sqrt(x));
for (Int n = 3; n <= sqrtX; n += 2) if (x % n == 0) return false;
return true;
}
void input() {
cin >> N;
loop(n,0,N) cin >> ns[n];
ns.resize(N);
}
void solve() {
Int count = 0;
loop(n,0,N) count += isPrime(ns[n]);
cout << count << endl;
}
int main() {
input();
solve();
return 0;
}