Cod sursa(job #2017565)
Utilizator | Data | 1 septembrie 2017 17:38:13 | |
---|---|---|---|
Problema | Ciurul lui Eratosthenes | Scor | 100 |
Compilator | cpp | Status | done |
Runda | Arhiva educationala | Marime | 0.38 kb |
#include <fstream>
#define X 2000001
using namespace std;
ifstream in ("ciur.in");
ofstream out("ciur.out");
bool prim[X];
int main()
{
int n,p=2,nr=0;
in>>n;
while (p*p<=n){
for (int i=2;i<=n/p;i++)
prim[i*p]=1;
p++;
while (prim[p]==1)p++;
}
for (int i=2;i<=n;i++)
if (prim[i]==0) nr++;
out<<nr;
return 0;
}