Cod sursa(job #368904)

Utilizator cristian9Cristian Zloteanu cristian9 Data 26 noiembrie 2009 14:48:35
Problema Ciurul lui Eratosthenes Scor 0
Compilator cpp Status done
Runda Arhiva educationala Marime 0.4 kb
#include<iostream>
using namespace std;
int main()
{freopen ("ciur.in", "r", stdin);
freopen ("ciur.out", "w", stdout);
int n,i,v[300000],j,s;
scanf ("%d", &n);
for(i=2;i<=n;i++){
    v[i]=i;
}
v[1]=-1;
for(i=2;i<=n;i++){
	if(v[i]>0){
		for(j=i+i;j<=n;j+=i){
			if(v[j]>0){
				v[j]=-v[j];
			}
		}
	}
}
for(i=1;i<=n;i++){
	if(v[i]>0){
		s++;
	}
}
printf("%d", s);
return 0;
}