Cod sursa(job #1169895)
Utilizator | Tataru Mihai Tataru | Data | 12 aprilie 2014 12:20:55 |
---|---|---|---|
Problema | Ciurul lui Eratosthenes | Scor | 60 |
Compilator | cpp | Status | done |
Runda | Arhiva educationala | Marime | 0.49 kb |
#include <iostream>
#include <fstream>
#include <math.h>
#define inFile "ciur.in"
#define outFile "ciur.out"
using namespace std;
short prim[2000001];
int main()
{
int n,s=1,i,j;
ifstream fin(inFile);
fin>>n;
fin.close();
for(i=3;i<=n;i+=2)
{
if(prim[i]==0)
{
s++;
for(j=i*3;j<=n;j+=i*2)
prim[j]=1;
}
}
ofstream fout(outFile);
fout<<s;
fout.close();
}