Cod sursa(job #234548)

Utilizator andumMorie Daniel Alexandru andum Data 21 decembrie 2008 10:13:51
Problema Ciurul lui Eratosthenes Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.48 kb
#include <iostream.h>
#include <fstream.h>
#include <string.h>
#include <math.h>

fstream f("ciur.in", ios::in);
fstream g("ciur.out", ios::out);

int main ()
    {
     long k,n,i,j;

     unsigned char p[2000001];
     f>>n;
     f.get();
     memset(p,'1',2000001);
     i=2; k=0;
     while (i<=n)
       if (p[i]=='1'){
	 for( j=i;j<=n;j=j+i)
	   p[j]='0';
	   k++;
	   }
	   else i++;
      f.close();
      g<<k;
      g.close();
      return 0;

}