51Nod-1106 质数检测
2017-09-10 17:20
260 查看
1106 质数检测
基准时间限制:1 秒 空间限制:131072 KB 分值: 0 难度:基础题 收藏 关注
给出N个正整数,检测每个数是否为质数。如果是,输出”Yes”,否则输出”No”。
Input
第1行:一个数N,表示正整数的数量。(1 <= N <= 1000)
第2 - N + 1行:每行1个数(2 <= S[i] <= 10^9)
Output
输出共N行,每行为 Yes 或 No。
Input示例
5
2
3
4
5
6
Output示例
Yes
Yes
No
Yes
No
基准时间限制:1 秒 空间限制:131072 KB 分值: 0 难度:基础题 收藏 关注
给出N个正整数,检测每个数是否为质数。如果是,输出”Yes”,否则输出”No”。
Input
第1行:一个数N,表示正整数的数量。(1 <= N <= 1000)
第2 - N + 1行:每行1个数(2 <= S[i] <= 10^9)
Output
输出共N行,每行为 Yes 或 No。
Input示例
5
2
3
4
5
6
Output示例
Yes
Yes
No
Yes
No
#include<iostream> #include<cmath> #define N 100001 using namespace std; bool num ; int n,a; int main() { for (int i=2;i<sqrt(N);i++) { if (!num[i]) { for (int k=i*i;k<N;k+=i) num[k]=true; } } cin>>n; for (int i=0;i<n;i++) { cin>>a; if (a<N) { if (num[a]) cout<<"No"<<endl; else cout<<"Yes"<<endl; } else { int p=sqrt(a),i; for ( i=2;i<=p;i++) if (!num[i]&&a%i==0) break; if (i!=p+1) cout<<"No"<<endl; else cout<<"Yes"<<endl; } } return 0; }
相关文章推荐
- 【51Nod】1106 质数检测
- 51nod_1106 质数检测
- 51nod-【1106 质数检测】
- 51Nod-1106-质数检测
- 51nod-1106质数检测
- 【51nod】1106 质数检测 埃拉托斯特尼筛法
- 51nod 1106 质数检测
- 51nod 1106 质数检测
- 51Nod 1106 质数检测
- 51Nod-1106-质数检测
- 51nod 1106 质数检测
- 20140915 【 数论 - Miller_Rabin素数测试 】 51nod 1106 . 质数检测
- 51nod 1106 质数检测 (三种模板_好题)
- 【51nod】1106 质数检测
- 51nod 1106 质数检测
- 51nod 1106 质数检测——Mr判素数
- 51nod 1106 质数检测
- 51Nod 1106 质数检测
- 51nod 1106 质数检测(miller rabin 素数测试.)
- 【51NOD-0】1106 质数检测