Cod sursa(job #831193)
Utilizator | Data | 8 decembrie 2012 11:37:45 | |
---|---|---|---|
Problema | Ciurul lui Eratosthenes | Scor | 30 |
Compilator | cpp | Status | done |
Runda | Arhiva educationala | Marime | 0.44 kb |
#include <fstream>
using namespace std;
ifstream in ("ciur.in");
ofstream out ("ciur.out");
int v[2000001];
int main()
{
int n,i,k,f,nr=0;
in>>n;
// for(i=1;i<=n;i++)
// v[i]=1;
for(k=2;k*k<=n;k++)
{
if(v[k]==0)
{
for(f=k*k;f<=n;f=f+k)
v[f]=1;
}
}
for(i=1;i<=n;i++)
if(v[i]==0)
nr++;
out<<nr-1;
}