Cod sursa(job #277859)
Utilizator | Data | 11 martie 2009 22:41:06 | |
---|---|---|---|
Problema | Ciurul lui Eratosthenes | Scor | 0 |
Compilator | cpp | Status | done |
Runda | Arhiva educationala | Marime | 0.36 kb |
#include<stdio.h>
int main()
{
long int n,i,j,contor=0;
bool v[2000002];
freopen("ciur.in", "r", stdin);
freopen("ciur.out", "w", stdout);
scanf("%ld",&n);
for(i=1;i<=n;++i){v[i]=0; contor++;}
for(i=2;i<=(n/2);i++){
for(j=2;(j*i)<=n;j++)
{ if(v[j*i]==1)contor++; v[i*j]=1; contor--;}}
contor++;
printf("%ld", contor); return 0;
}