1286.有多少素数 SDNUOJ 1286

Description
给你很多的正整数,只是为了找出有多少素数。
Input
有很多的测试用例,每个测试用例第一行是正整数N,表示要从N个整数中找。每个整数不超过2147483647,其中每个不小于2。
Output
对于每种情况输出素数的个数。
Sample Input
3
2 3 4
Sample Output
2

j * j <= s[i] 就TLE
j <= sqrt(s[i]) 就AC

AC代码

#include <cstdio>
#include <cmath>
#include <algorithm>
#include <iostream>
#include <cstring>
int s[1000];
int main()
{
    int n;
    while(~scanf("%d",&n))
    {
        int sum = 0;
        for(int i = 0; i < n; i++)
            scanf("%d", &s[i]);
        for(int i = 0; i < n; i++)
        {
            int j;
            for(j = 2; j <= sqrt(s[i]); j++)
                if(s[i] % j == 0)
                    break;
            if(j > sqrt(s[i]))
                sum++;
        }
        printf("%d\n", sum);
    }
    return 0;
}

TLE代码

#include <cstdio>
#include <cmath>
#include <algorithm>
#include <iostream>
#include <cstring>
int s[1000];
int main()
{
    int n;
    while(~scanf("%d",&n))
    {
        int sum = 0;
        for(int i = 0; i < n; i++)
            scanf("%d", &s[i]);
        for(int i = 0; i < n; i++)
        {
            int j;
            for(j = 2; j * j <= s[i]; j++)
                if(s[i] % j == 0)
                    break;
            if(j * j> s[i])
                sum++;
        }
        printf("%d\n", sum);
    }
    return 0;
}
全部评论

相关推荐

06-26 17:24
已编辑
宁波大学 golang
迷失西雅图:别给,纯kpi,别问我为什么知道
点赞 评论 收藏
分享
自学java狠狠赚一...:骗你点star的,港卵公司,记得把star收回去
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务