top1编程
← 返回题目
题解

【入门】判断素数

1 条题解

  • 0
    @ 2026-7-30 1:33:21

    解题思路

    从2枚举到平方根,若找到能整除n的数则不是素数。

    参考代码

    #include <iostream>
    using namespace std;
    
    int main() {
        int n;
        bool ok = true;
        cin >> n;
        // 小于2的数不属于素数。
        if (n < 2) ok = false;
        // 如果能被2到平方根之间的数整除,就不是素数。
        for (int i = 2; i * i <= n; i++) {
            if (n % i == 0) ok = false;
        }
        // 根据判断结果输出题目指定的字母。
        if (ok) cout << "T";
        else cout << "F";
        return 0;
    }
    

    复杂度分析

    代码只使用了简单变量、循环和字符串。设输入长度为 n,时间复杂度为 O(n^2)(若有嵌套枚举则按实际循环计算),额外空间复杂度为 O(n)。

    • 1