Cod sursa(job #2343902)
Utilizator | Data | 14 februarie 2019 15:06:21 | |
---|---|---|---|
Problema | Ciurul lui Eratosthenes | Scor | 90 |
Compilator | cpp-64 | Status | done |
Runda | Arhiva educationala | Marime | 0.41 kb |
#include <fstream>
using namespace std;
ifstream in("ciur.in");
ofstream out("ciur.out");
const int NMAX = 2000000;bool c[NMAX];int n,cnt = 1;
void ciur()
{
if(n < 2) cnt = 0;
c[0] = c[1] = true;
for(int i = 3; i <= n; i+=2)
if(c[i] == false)
{
++cnt;
for(int j = 2*i; j < n; j+=i) c[j] = true;
}
}
int main()
{
in>>n;ciur();out<<cnt;
}