primelist.cpp

来自「一些ACM题目的解答,主要是soj和poj的」· C++ 代码 · 共 33 行

CPP
33
字号
#include<stdio.h>
#include<math.h>

const int MAX = 1000001;

int a[MAX];

int next(int i)
{
    int j=i+1;
    while(a[j]==1&&j<MAX)
        j++;
    return j;
}
void primelist(void)
{
    int i,j,k;
    for(i=2;i*i<MAX;i=next(i))
    {
        for(j=i;j*i<MAX;j=next(j))
        {
            for(k=i*j;k<MAX;k*=i)
            {
                a[k]=1;
            }
        }
    }
    for(i=2,j=0;i<MAX;i++)
    {
        if(!a[i])
            a[j++]=i;
    }
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?