算法基础课第四讲——数学知识——质数
题目:866.试除法判定质数
给定 n 个正整数 ai,判定每个数是否是质数。
输入格式
第一行包含整数 n。
接下来 n 行,每行包含一个正整数 ai。
输出格式
共 n 行,其中第 i 行输出第 i 个正整数 ai 是否为质数,是则输出
Yes
,否则输出No
。
数据范围
1≤n≤100,
1≤ai≤231−1
输入样例:
2
2
6
输出样例:
Yes
No
素数题真的很容易超时
传统写法:
1、 for(int i=2;i<sqrt(n);i++),
这种写法改成int x=sqrt(n);for(int i=2;i<=x;i++)可以减少一点运行时间,但是还是容易超时
但是会容易超时,尤其sqrt(n),这个函数运行很慢,每次执行都要运算一遍sqrt()
2、或者for(int i = 2;