Cod sursa(job #355343)
Utilizator | Data | 10 octombrie 2009 19:22:30 | |
---|---|---|---|
Problema | Ciurul lui Eratosthenes | Scor | 0 |
Compilator | cpp | Status | done |
Runda | Arhiva educationala | Marime | 0.47 kb |
#include<fstream.h>
int main()
{
long long n,a[2000001],i,k,nr;
ifstream f("ciur.in");
ofstream g("ciur.out");
f>>n;
a[1]=0;
for(i=2;i<=n;i++)
a[i]=1;
for(i=2;i<=n/2;i++)
{
if(a[i]==1)
{
k=2*i;
while(k<=n)
{
a[k]=0;
k+=i;
}
}
}
nr=0;
for(i=2;i<=n;i++)
if(a[i]==1)
nr++;
g<<nr;
f.close();
g.close();
return 0;
}