问题标题: 酷町堂:9812 输出素数个数

0
0
已解决
葛子豪
葛子豪
资深守护
资深守护

题目链接: 酷町堂:9812

#include<iostream>

#include<cmath>

using namespace std;

int main(){

bool b[100005]={0};

int n=10000,cnt=0;

b[1]=1;

for(int i=2;i<=sqrt(n);i++){

if(b[i]==0){

for(int j=i*2;j<=n;j=j+i){

b[j]=1;

}

}

}

for(int i=1;i<=n;i++){

if(b[i]==0){

cnt++;

}

}

cout<<cnt;

return 0;

}

0分


0
已采纳
彭志杰
彭志杰
初级天翼
初级天翼

遍历2~1000000,用以下函数来判断循环变量是否为质数:

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

 

我要回答