Cod sursa(job #147286)

Utilizator skyelHighScore skyel Data 2 martie 2008 19:09:48
Problema Ciurul lui Eratosthenes Scor 0
Compilator cpp Status done
Runda Arhiva educationala Marime 0.5 kb
#include<fstream>
using namespace std;
#define input "ciur.in"
#define output "ciur.out"
#define Nmax 2000002
char x[Nmax];
int main()
	 {
	 ifstream fin(input);
	 ofstream fout(output);
	 int n,nr=0,rsp[1025];
	 fin>>n;
	 for(int i=2;i<=n;++i)
		  if(x[i]!='0')
				{
				nr++;
				if(nr<1001)
					 rsp[nr]=i;
				for(int j=i*i;j<=n;j+=i) x[j]='0';
				}
	 fout<<nr<<"\n";
	 for(int i=1; (i<=nr) && (i<=1000); i++)fout<<rsp[i]<<" ";
	 fin.close();
	 fout.close();	 
	 return 0;
	 }