Cod sursa(job #1936799)
Utilizator | Data | 23 martie 2017 14:18:37 | |
---|---|---|---|
Problema | Ciurul lui Eratosthenes | Scor | 30 |
Compilator | cpp | Status | done |
Runda | Arhiva educationala | Marime | 0.47 kb |
#include <cstdio>
#include <cmath>
using namespace std;
const int N = 2000005;
bool sir[N];
int n;
int nr = 0;
void citire()
{
scanf("%d", &n);
}
void solve()
{
int lim = n;
for(int i = 2; i <= lim; i++)
{
if(sir[i] == true)
{
continue;
}
nr++;
for(int j = i * i; j <= n; j += i)
{
sir[j] = true;
}
}
printf("%d", nr);
}
int main()
{
freopen("ciur.in", "r", stdin);
freopen("ciur.out", "w", stdout);
citire();
solve();
return 0;
}