Cod sursa(job #387705)

Utilizator AndreiRSStatescu Andrei Rares AndreiRS Data 28 ianuarie 2010 10:42:58
Problema Ciurul lui Eratosthenes Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.5 kb
#include <stdio.h>
#include <math.h>

int n;
int i,j,r,c,ok;
char v[2000002];

int main(){
	
	FILE*f=fopen("ciur.in","r");
	fscanf(f,"%d",&n);
	fclose(f);
	
/*	for(i=2;i<=n;i++){
		ok=1;		
		r=(int)sqrt(i);
		
		for(j=2;j<=r;j++)
			if(i%j==0){
				ok=0;
				break;
			}
		
		if(ok)
			c++;
		
	}*/
	
	for(i=2;i<=n;i++)
		if(v[i]==0){
			c++;
			for(j=i;j<=n;j+=i)
				v[j]=1;			
		}
	
	
	FILE*f2=fopen("ciur.out","w");
	fprintf(f2,"%d",c);
	fclose(f2);	
	
	return 0;
}