Cod sursa(job #1653037)
Utilizator | Data | 15 martie 2016 18:10:07 | |
---|---|---|---|
Problema | Ciurul lui Eratosthenes | Scor | 50 |
Compilator | cpp | Status | done |
Runda | Arhiva educationala | Marime | 0.42 kb |
#include <iostream>
#include <math.h>
#include <fstream>
using namespace std;
int main()
{ long n;
long s=0;
ifstream fin("ciur.in");
ofstream fout("ciur.out");
fin>>n;
short *a = new short[n+10];
for(long i=2; i<=n; i++) a[i]=1;
for(long i=2; i<=n; i++){
if (a[i]==1){
s++;
for(long j=2; j<=n/i; j++){
a[i*j]=0;
}
}
}
fout<<s;
return 0;
}