Cod sursa(job #2273094)
Utilizator | Data | 31 octombrie 2018 00:08:27 | |
---|---|---|---|
Problema | Ciurul lui Eratosthenes | Scor | 100 |
Compilator | cpp-64 | Status | done |
Runda | Arhiva educationala | Marime | 0.46 kb |
#include <iostream>
#include <fstream>
using namespace std;
char v[2000001];
int main()
{ long n,i,j,nr=0;
ifstream f("ciur.in");
f>>n;
f.close();
for(i=2;i<=n;i++)
v[i]='0';
for(i=2;i<=n/2;i++)
if(v[i]=='0'){
nr+=1;
for(j=i*2;j<=n;j+=i)
v[j]='1';
}
ofstream g("ciur.out");
for(i=n/2+1;i<=n;i++)
if(v[i]=='0'){
nr+=1;
}
g<<nr;
g.close();
return 0;
}