基准时间限制: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 <cstdio> #include <cmath> bool check(int num){ if(num == 1||num==0) return false ; if(num == 2 || num == 3) return true ; int len = (int)sqrt(num) + 1 ; for(int i=2 ; i<=len ; i++){ if(num%i==0){ return false ; } } return true ; } int main(){ int n ; int num1 ; while(~scanf("%d" , &n)){ for(int i=0 ; i<n ; i++){ scanf("%d" , &num1) ; if(check(num1)){ printf("Yes ") ; } else printf("No ") ; } } return 0 ; }