L1-028 判断素数

题目描述

本题的目标很简单,就是判断一个给定的正整数是否素数。

输入格式

输入在第一行给出一个正整数N(≤ 10),随后N行,每行给出一个小于2^​31​​的需要判断的正整数。

输出格式

对每个需要判断的正整数,如果它是素数,则在一行中输出Yes,否则输出No。

输入样例

2
11
111

输出样例

Yes
No

题解思路

开方然后暴力做就行

题解代码

#include 
using namespace std;

bool judge(int x){
    if(x < 2){
        return false;
    }
    int up_bound = (int)sqrt(x);
    for(int i = 2; i <= up_bound; i++){
        if(x % i == 0){
            return false;
        }
    }
    return true;
}

int main(){
    int T = 0;
    cin >> T;
    while(T--){
        int x = 0;
        cin >> x;
        if(judge(x)){
            cout << "Yes" << endl;
        } else {
            cout << "No" << endl;
        }
    }
    return 0;
}

你可能感兴趣的:(L1-028 判断素数)