#T77092. 埃氏筛法
0
埃氏筛法
# 埃氏筛法
题目背景
埃拉托斯特尼筛法(The Sieve of Eratosthenes)简称埃氏筛法,是一种由古希腊数学家埃拉托斯特尼提出的,用于找出一定范围内所有质数的算法。
题目描述
利用埃氏筛法筛选出 1 到 10^7 范围内的所有质数,然后处理 n 次查询,每次查询一个数 t,判断 t 是否为质数。
埃氏筛法的基本思想是:
- 从 2 开始,将每个质数的倍数标记为非质数
- 对于每个未标记的数,将其标记为质数
- 重复以上过程,直到遍历到 √max
输入格式
第一行输入一个整数 n,表示查询次数(1 ≤ n ≤ 10^5)。
接下来 n 行,每行一个整数 t,表示要查询的数(1 ≤ t ≤ 10^7)。
输出格式
对于每次查询,输出一行。如果 t 是质数,输出 yes;否则输出 no。
输入输出样例
3
2
3
4
yes
yes
no
5
1
10
100
1000
10000
no
no
no
no
yes
说明/提示
对于 100% 的数据,保证 1 ≤ n ≤ 10^5,1 ≤ t ≤ 10^7。
提示:使用埃氏筛法预处理所有质数可以高效处理大量查询。