Cod sursa(job #1497267)
Utilizator | Data | 6 octombrie 2015 16:16:30 | |
---|---|---|---|
Problema | Ciurul lui Eratosthenes | Scor | 100 |
Compilator | cpp | Status | done |
Runda | Arhiva educationala | Marime | 0.41 kb |
#include <iostream>
#include <fstream>
#include <vector>
#define nmax 2000000
using namespace std;
ifstream fin("ciur.in");
ofstream fout("ciur.out");
vector<bool> ciur(nmax,true);
int main()
{
long n,j,nr=0,i;
fin>>n;
for(i=2;i*i<=n;i++)
if(ciur[i])
for(j=2;j*i<=n;j++)
ciur[i*j]=false;
for(i=2;i<=n;i++)
if(ciur[i])nr++;
fout<<nr;
}