Cod sursa(job #1513626)

Utilizator adu18sptAndrei Mircea adu18spt Data 29 octombrie 2015 19:37:17
Problema Ciurul lui Eratosthenes Scor 0
Compilator cpp Status done
Runda Arhiva educationala Marime 1.13 kb
#include<fstream>
#include<cmath>
using namespace std;
ifstream fin("prim.in");
ofstream fout("prim.out");
unsigned n,j,i,x=1,b[100100],k,m=0;
bool a[1000000];
int main()
{
     fin>>n;
    for (i=2;i<=1000000;i++)
        a[i]=1;

    for (i=2;i<=1000000;i++)
        if (a[i]!=0)
        {
            b[x]=i;
            x++;
            if(x==n)
                break;
            for (j=2*i;j<=1000000;j+=i)
                a[j]=0;
        }

        for (i=2;i<=1000000;i++)
        a[i]=1;

    for (i=2;i<=b[n];i++)
        if (a[i]!=0)
        {
            for (j=2*i;j<=1000000;j+=i)
            {
                a[j]=0;
                k=j;
            }

        }

        for(i=1;i<=1000000;i++)
        {
            if(a[i]==1)
            {
                for(int z=2;z<=sqrt(i);z++)
                {
                    if(i%z==0)
                    {
                       m=1;
                       break;
                    }
                }
            }
            if(m==1)
            {
                fout<<i;
                break;
            }
        }



}