POJ 3048 线性筛法求素数

来源:互联网 发布:淘宝销售方案 编辑:程序博客网 时间:2024/06/06 02:17

一个坑:
有组数据如下:
1
1

坑很深……

//By SiriusRen#include <cstdio>#define N 200000using namespace std;int n,mindiv[200050],prime[100000],top=0,xx,rec;int main(){    for(int i=2;i<=N;i++)    {        if(!mindiv[i])prime[++top]=mindiv[i]=i;        for(int j=1;j<=top&&prime[j]*i<=N;j++)        {            mindiv[prime[j]*i]=prime[j];            if(!(i%prime[j]))break;        }    }    prime[0]=1;    while(~scanf("%d",&n))    {        int ans=0;        while(n--)        {            scanf("%d",&xx);            for(int i=0;prime[i]<=xx;i++)            {                if(!(xx%prime[i])&&ans<prime[i])ans=prime[i],rec=xx;            }        }        printf("%d\n",rec);    }}

这里写图片描述

0 0
原创粉丝点击