Cod sursa(job #2174973)
| Utilizator | Data | 16 martie 2018 14:34:26 | |
|---|---|---|---|
| Problema | Ciurul lui Eratosthenes | Scor | 100 |
| Compilator | cpp | Status | done |
| Runda | Arhiva educationala | Marime | 0.6 kb |
#include<iostream>
#include<fstream>
#include<cmath>
#define N_MAX 2000005
using namespace std;
ifstream fin("ciur.in");
ofstream fout("ciur.out");
bool primes[N_MAX];
int prime_nr;
int n;
int main()
{
fin>>n;
prime_nr = n-1;
for(int i=2;i<=n;i++) primes[i] = 1;
for(int i=2;i<=sqrt(n);i++)
{
if(primes[i])
{
for(int j=i+i;j<=n;j+=i)
{
if(primes[j])
{
prime_nr--;
primes[j] = 0;
}
}
}
}
fout<<prime_nr;
}
