0
点赞
收藏
分享

微信扫一扫

repeat_欧氏筛

狐沐说 2022-01-31 阅读 50
知识图谱

欧氏筛__

//

const int MAXN=1e6+7;
bool judge[MAXN];
int prime[MAXN];

int sieve( int n )
{
    int cnt=0,i,j;
    memset( judge,0,sizeof( judge ) );      // 
    memset( prime,0,sizeof( prime ) );

    for( i=2;i<=n;i++ )
    {
        if( !jugde[i] ) prime[cnt++]=i;

        for( j=0; j<cnt && prime[j]<=n/i ;j++ )
        {
            judge[ i*prime[j] ]=true;   //
            if( i%prime[j]==0 ) break;
        }
    }
    return cnt;     //
}

//
find:
01 忘记 memset() 初始化
02 用 cnt 用习惯了 用 pos 写不快
03 检查数组名对应
04 返回 cnt

举报

相关推荐

0 条评论