Cod sursa(job #2538488)
Utilizator | Robert Birsan robertbirsan | Data | 4 februarie 2020 19:45:32 |
---|---|---|---|
Problema | Ciurul lui Eratosthenes | Scor | 30 |
Compilator | cpp-64 | Status | done |
Runda | Arhiva educationala | Marime | 0.5 kb |
#include <bits/stdc++.h>
#define M 2000000
using namespace std;
ifstream f("ciur.in");
ofstream g("ciur.out");
long long int n, i, j, nr;
long ciur[M + 5], cnt;
void read()
{
f >> n;
f.close();
}
void solve()
{
for (int i=2; i<=n; i++)
ciur[i] = 1;
for (int i=2; i<=n; i++)
if (ciur[i] == 1)
{
cnt++;
for(j=i+i; j<=n; j=j+i)
ciur[j] = 0;
}
g << cnt;
g.close();
}
int main()
{
read();
solve();
return 0;
}