Cod sursa(job #1004352)
Utilizator | Data | 2 octombrie 2013 17:12:06 | |
---|---|---|---|
Problema | Ciurul lui Eratosthenes | Scor | 30 |
Compilator | cpp | Status | done |
Runda | Arhiva educationala | Marime | 0.49 kb |
#include <fstream>
using namespace std;
int t[2000000];
int main()
{
int n,i,j,nr;
ifstream fin("ciur.in");
ofstream fout("ciur.out");
fin >> n;
fin.close();
nr = 1;
for(i = 3;i<=n;i+=2)
{
if (t[i] == 0)
for(j = i*i;j<=n;j+=2*i)
t[j] = 1;
}
for(i = 3;i<=n;i+=2)
if (t[i] == 0) nr++;
fout << nr<<"\n";
fout.close();
return 0;
}