Cod sursa(job #1327452)
| Utilizator | Data | 26 ianuarie 2015 19:02:54 | |
|---|---|---|---|
| Problema | Ciurul lui Eratosthenes | Scor | 100 |
| Compilator | cpp | Status | done |
| Runda | Arhiva educationala | Marime | 0.47 kb |
#include<iostream>
#include<fstream>
using namespace std ;
ifstream fin ( "ciur.in" ) ;
ofstream fout ( "ciur.out" ) ;
char v[2000003] ;
int n , np ;
void ciur ()
{
int i , j ;
for ( i=2 ; i*i<=n ; i++ )
if ( v[i]==0 )
for ( j=i*i ; j<=n ; j=j+i )
v[j]=1 ;
np=1 ;
for ( i=3 ; i<=n ; i=i+2 )
if ( v[i]==0 )
np++ ;
}
int main ()
{
fin>>n ;
ciur () ;
fout<<np ;
return 0 ;
}
