列表

详情


OR86. 返回小于

描述

请考虑性能

输入描述

一个整数N

输出描述

小于N的质数数量

示例1

输入:

10

输出:

4

说明:

N=10,质数有 [2, 3, 5, 7]

原站题解

C 解法, 执行用时: 1ms, 内存消耗: 372KB, 提交时间: 2020-08-12

# include <stdio.h>

int main()
{
    int n;
    scanf("%d", &n);
    int flag = 1;
    int count = 1;
    for(int i=3; i<n; i++)
    {
        for(int j=i-1; j>1; j--)
        {
            if(i%j == 0)
            {
                flag = 0;
                break;
            }
        }
        count += flag;
        flag = 1;
    }
    printf("%d\n", count);
    return 0;
}

C 解法, 执行用时: 2ms, 内存消耗: 200KB, 提交时间: 2022-07-27

#include<stdio.h>
#include<math.h>
int main()
{
    int n;
    scanf("%d", &n);
    int count = 0;
    for(int i = 2; i <= n; i++)
    {
        int flag = 0;
        for(int j = 2; j <= sqrt(i); j++)
        {
            if(i % j == 0)
            {
                flag = 1;
                break;
            }
        }
        if(!flag)
            count++;
    }
    printf("%d", count);
    return 0;
}

上一题