Cod sursa(job #1300321)

Utilizator bence21Bako Bence bence21 Data 24 decembrie 2014 12:32:52
Problema Ciurul lui Eratosthenes Scor 30
Compilator cpp Status done
Runda Arhiva educationala Marime 0.76 kb
#include<fstream>
#include<math.h>
using namespace std;
bool t[2000000];
int main()
{
    ifstream f("ciur.in");
    ofstream g("ciur.out");
    long n,i,d=0,x,j;
    f>>n;
    for(i=2;i<=n;i++)
    {
        if(t[i]==0)
        {
            bool p=1;
            x=2;
            while(x<=sqrt(i))
            {
                if(i%x==0)
                {
                    p=0;
                    x=i;
                }
                x++;
            }
            if(p)
            {
                d++;
                j=i;
                while(j<=n)
                {
                    t[j]=1;
                    j+=i;
                }
            }
        }
    }
    g<<d;
    f.close();
    g.close();
    return 0;
}