Cod sursa(job #1455304)
Utilizator | Data | 27 iunie 2015 15:21:17 | |
---|---|---|---|
Problema | Ciurul lui Eratosthenes | Scor | 100 |
Compilator | cpp | Status | done |
Runda | Arhiva educationala | Marime | 0.46 kb |
#include <fstream>
using namespace std;
ofstream fout("ciur.out");
ifstream fin("ciur.in");
const int NMAX = 2000001;
int n;
char ciur[NMAX];
int main()
{
int nr = 0;
fill_n(ciur + 2, NMAX, 1);
fin >> n;
for(int i=2; i<=n; i++)
if(ciur[i]) {
nr++;
for(int j=i*2; j<=n; j+=i)
ciur[j] = 0;
}
fout << nr << '\n';
fin.close();
fout.close();
return 0;
}