Cod sursa(job #1893470)
Utilizator | Data | 25 februarie 2017 18:26:08 | |
---|---|---|---|
Problema | Ciurul lui Eratosthenes | Scor | 0 |
Compilator | cpp | Status | done |
Runda | Arhiva educationala | Marime | 0.49 kb |
#include <iostream>
#include <fstream>
using namespace std;
ifstream fin("ciur.in");
ofstream fout("ciur.out");
const int MAX=1000000002;
bool x[MAX];
int ciur_erastothene(long long n)
{
int i, j, sum=0;
for(i=2; i*i<=n; i++)
{
if(!x[i])
{
for(j=i*i; j<=n; j+=i) x[j]=true;
}
}
for(i=1; i<=n; i++)
{
if(x[i]== false) sum++;
}
return sum;
}
int main()
{ long long n;
fin>>n;
fout<<ciur_erastothene(n);
return 0;
}