Cod sursa(job #256724)
| Utilizator | Data | 12 februarie 2009 06:28:40 | |
|---|---|---|---|
| Problema | Ciurul lui Eratosthenes | Scor | 100 |
| Compilator | cpp | Status | done |
| Runda | Arhiva educationala | Marime | 0.42 kb |
#include <iostream.h>
#include <fstream.h>
#define IN "ciur.in"
#define OUT "ciur.out"
ifstream fin(IN);
ofstream fout(OUT);
int n, cnt;
char prim[2000005];
int main(void)
{
int i, j;
fin>>n;
for(i=2;i<=n;i++)
prim[i]=1;
for(i=2;i<=n;i++)
if(prim[i])
{
++cnt;
for(j=i+i;j<=n;j+=i)
prim[j]=0;
}
fout<<cnt<<endl;
fout.close();
fin.close();
return 0;
}
