Cod sursa(job #1915439)
Utilizator | Data | 8 martie 2017 21:01:20 | |
---|---|---|---|
Problema | Ciurul lui Eratosthenes | Scor | 0 |
Compilator | cpp | Status | done |
Runda | Arhiva educationala | Marime | 0.47 kb |
#include <bits/stdc++.h>
using namespace std;
#define N 1000000
bool p[N]; //2*i +1 e prim
int nr,n;
void ciur()
{
for (int i = 1; (i << 1) + 1 <= n; i += 1)
{
if (p[i] == 0)
{
nr++;
for (int j = i + i + i + 1; (j << 1) + 1 <= n; j += (i << 1) + 1)
{
p[j] = 1;
}
}
}
}
int main()
{
nr = 1;
scanf("%d",&n);
ciur();
printf("%d",nr);
}