问题标题: 酷町堂:6605 酷町猫玩数学游戏

0
0
已解决
程安琪
程安琪
资深守护
资深守护

题目链接: 酷町堂:6605

题目描述 De**ion

给定N,求1,2,…,N中素数的个数

输入描述 Input De**ion

一行:一个整数N

输出描述 Output De**ion

一行:一个整数表示素数的个数

样例输入 Sample Input

10

样例输出 Sample Output

4

数据范围及提示 Data Size & Hint

对于40% 的数据,1≤N≤106
对于 80% 的数据,1≤N≤107
对于 100% 的数据1≤N≤108

 

我的0分超时代码:

#include<bits/stdc++.h>
using namespace std;
const int N=1e9+10;
char su[N];
int n;
int main(){
    cin>>n;
    int co=0;
    for(int i=2;i<=n;i++){
        su[i]=1;
    }
    for(int i=2;i<=sqrt(n);i++){
        if(su[i]==1){
            for(int j=2*i;j<=n;j+=i){
                su[j]=0;
            }
        }
    }
    for(int i=2;i<=n;i++){
        if(su[i])    co++;
    }
    cout<<co;
    return 0;
}
求回复!!!谢谢!!


0
已采纳
孔德怡
孔德怡
新手光能
新手光能

抱歉,我也写错了

我要回答