Cod sursa(job #373885)
| Utilizator | Data | 15 decembrie 2009 13:33:42 | |
|---|---|---|---|
| Problema | Ciurul lui Eratosthenes | Scor | 100 |
| Compilator | cpp | Status | done |
| Runda | Arhiva educationala | Marime | 0.4 kb |
#include<fstream>
using namespace std;
const int N = 1<<21;
bool c[N];
int n;
ifstream in("ciur.in");
ofstream out("ciur.out");
void prime()
{
int i, j;
in>>n;
for(i=2; i*i<=n; i++)
if(!c[i])
for(j = i*i; j<=n; j+=i)
c[j] = true;
}
void afisare()
{
int i, nr = 0;
for(i=2; i<=n; i++)
if(!c[i])
nr++;
out<<nr;
}
int main()
{
prime();
afisare();
return 0;
}