51nod 1106 质数检测
Posted 8023spz
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了51nod 1106 质数检测相关的知识,希望对你有一定的参考价值。
给出N个正整数,检测每个数是否为质数。如果是,输出"Yes",否则输出"No"。
输入
第1行:一个数N,表示正整数的数量。(1 <= N <= 1000) 第2 - N + 1行:每行1个数(2 <= S[i] <= 10^9)
输出
输出共N行,每行为 Yes 或 No。
输入样例
5
2
3
4
5
6
输出样例
Yes Yes No Yes No
孪生素数。
代码:
#include <iostream> #include <cstdio> #include <cmath> #define MAX 50000 #define PI 3.1415926 using namespace std; bool ispri(int x) { if(x <= 1) return false; if(x == 2 || x == 3) return true; if(x % 6 != 1 && x % 6 != 5) return false; for(int i = 5;i * i <= x;i += 6) { if(x % i == 0 || x % (i + 2) == 0) return false; } return true; } int main() { int n,d; scanf("%d",&n); while(n --) { scanf("%d",&d); puts(ispri(d) ? "Yes" : "No"); } }
以上是关于51nod 1106 质数检测的主要内容,如果未能解决你的问题,请参考以下文章