Description
用筛法求之N内的素数。
Input
N
Output
0~N的素数
Sample Input
100
Sample Output
2357111317192329313741434753596167717379838997
HINT
#include <iostream>
usingnamespace std;
intmain()
{
intn,a[10001],i,j;
cin>>n;
for(i=1;i<=n;i++)
{
a[i]=i;
}
a[1]=0;
for(i=2;i<=n;i++)
for(j=i+1;j<=n;j++)
if(a[i]!=0)
if(a[j]%a[i]==0)
a[j]=0;
for(i=1;i<=n;i++)
{
if(a[i]!=0)
cout<<a[i]<<endl;
}
return0;
}
/**************************************************************
Problem: 1042
User: 201358501133
Language: C++
Result: Accepted
Time:12 ms
Memory:1268 kb
****************************************************************/
基本的方法就是:把 a[i] 除以 a[i+1]~a[n],若是能除尽,就为非素数,挖掉。