Cod sursa(job #1851501)
| Utilizator | Data | 19 ianuarie 2017 20:09:12 | |
|---|---|---|---|
| Problema | Ciurul lui Eratosthenes | Scor | 100 |
| Compilator | cpp | Status | done |
| Runda | Arhiva educationala | Marime | 0.53 kb |
#include <fstream>
using namespace std;
ifstream fin ( "ciur.in" );
ofstream fout ( "ciur.out" );
bool c[2000001];
int main()
{ int n, i, ct = 0, j;
fin >> n;
fin.close();
c[2] = 1;
for ( i = 3; i <= n; i = i + 2 )
c[i] = 1;
for ( i = 3; i * i <= n; i++ )
if ( c[i] == 1 )
for ( j = 3 * i; j <= n; j = j + 2 * i )
c[j] = false;
for ( i = 1; i <= n; i++ )
if ( c[i] == 1 ) ct++;
fout << ct;
fout.close();
return 0;
}
