Pagini recente » Cod sursa (job #3258210) | Cod sursa (job #536835) | Cod sursa (job #165682) | Cod sursa (job #1428291) | Cod sursa (job #146461)
Cod sursa(job #146461)
#include<fstream>
using namespace std;
int main()
{
unsigned n;
bool prim[2000005];
int count=0;
unsigned sol[1009];
unsigned i,j;
ifstream fin("ciur.in");
ofstream fout("ciur.out");
fin>>n;
prim[0]=0; prim[1]=0;
for(i=2;i<=n;i++) prim[i]=1;
for(i=4;i<=n;i+=2) prim[i]=0;
for(i=3;i<=n;i+=2)
if(prim[i])
for(j=i*i;j<=n;j+=i) prim[j]=0; // Elimin toti multiplii
for(i=(n%2)?n:n-1;i>=3;i-=2)
if(prim[i])
{ if(count==1000) break;
sol[count]=i;
count++;
}
sol[count]=2; count++;
fout<<count<<endl;
for(i=count-1;i;i--)
fout<<sol[i]<<' ';
fout<<endl;
fin.close();
fout.close();
return 0;
}