Cod sursa(job #148337)

Utilizator Matei14Popa-Matei Mihai Matei14 Data 4 martie 2008 10:05:17
Problema Ciurul lui Eratosthenes Scor 0
Compilator cpp Status done
Runda Arhiva educationala Marime 0.51 kb
#include<stdio.h>
#define N 2000001
long long n,nr,i,v[N]={0},x[20000];
void ciur(){
	for(int i=2;i<n;++i)
		if(!v[i]){
			for(int j=i+i;j<n;j+=i)
				v[j]=1;
			x[nr++]=i;
		}
}
int main(){
	freopen("ciur.in","r",stdin);
	freopen("ciur.out","w",stdout);
	scanf("%lld",&n);
	nr=0;
	ciur();
	printf("%lld\n",nr);
	if(nr<=1000)
		for(i=0;i<nr;++i)
			printf("%lld ",x[i]);
	else
		for(i=nr-1000;i<nr;++i)
			printf("%lld ",x[i]);
	printf("\n");
	fclose(stdin);
	fclose(stdout);
	return 0;
}