Cod sursa(job #1284435)
Utilizator | Data | 6 decembrie 2014 15:31:19 | |
---|---|---|---|
Problema | Ciurul lui Eratosthenes | Scor | 100 |
Compilator | cpp | Status | done |
Runda | Arhiva educationala | Marime | 0.46 kb |
#include <fstream>
#include <math.h>
using namespace std;
ifstream in;
ofstream out;
bool a[2000002];
int main()
{
in.open("ciur.in");
out.open("ciur.out");
int nr=0,n,i,j;
in>>n;
for (i=2; i<=n; i++)
a[i]=1;
for (i=2; i<=sqrt(n); i++)
if (a[i])
for (j=i; j<=n/i; j++)
a[i*j]=0;
for (i=2; i<=n; i++)
if (a[i]) nr++;
out<<nr;
out.close();
return 0;
}