Cod sursa(job #361157)

Utilizator nandoLicker Nandor nando Data 3 noiembrie 2009 21:38:40
Problema Ciurul lui Eratosthenes Scor 100
Compilator c Status done
Runda CNRV #4 Marime 0.39 kb
#include <stdio.h>
#include <time.h>
unsigned char val[2000000];

int main(){
	clock_t beg=clock();
	unsigned int N,num=0,i,j;
	memset(val,0,2000000);
	freopen("ciur.in","rt",stdin);
	freopen("ciur.out","wt",stdout);
	scanf("%u",&N);
	for(i=2;i<N;i++){
		if(!val[i-1]){
			for(j=i*2-1;j<N;j+=i){
				val[j]=1;
			}
		}
	}
	for(i=1;i<N;i++){
		if(!val[i])num++;
	}
	printf("%d",num);
	return 0;
}