Cod sursa(job #264346)

Utilizator adelinavVidovici Adelina adelinav Data 21 februarie 2009 22:16:23
Problema Ciurul lui Eratosthenes Scor 30
Compilator cpp Status done
Runda Arhiva educationala Marime 0.6 kb
#include<stdio.h>      
#define NMAX 32000//000   
     
int main(){   
  
freopen("ciur.in","r",stdin);   
freopen("ciur.out","w",stdout);   
  
int vprim[NMAX+1]={1,1},vsume[NMAX+1];   
  
long long i,j,n;   
  
scanf("%lld\n",&n);   
  
for(i=2;i<=n;i++){   
        if(vprim[i]==0)      
            for(j=2;j*i<=n;j++)      
                vprim[j*i]=1;      
}      
     
vsume[0]=0;      
for(i=1;i<=n;i++){      
    if(vprim[i]==0)      
        vsume[i]=vsume[i-1]+1;      
    else vsume[i]=vsume[i-1];      
}      
     
printf("%d\n",vsume[n]);      
return 0;      
}