Cod sursa(job #1938151)

Utilizator BirouRaresBirou Rares Gabriel BirouRares Data 24 martie 2017 17:42:54
Problema Divizori Primi Scor 5
Compilator cpp Status done
Runda alianta_001 Marime 0.97 kb
#include <iostream>
#include <fstream>
using namespace std;
ifstream f("divprim.in");
ofstream g("divprim.out");
int n,i,j,v[1000000],nr,k,x,m,c[1000003],s,ok;
int main()
{
    f>>n;
    c[0]=1;
    c[1]=1;
    c[2]=0;
    for(i=4;i*i<=1000002;i=i+2)
    {
        c[i]=1;
    }
    for(i=3;i*i<=1000002;i=i+2)
    {
        if(c[i]==0)
        {
            for(j=i;i*j<=1000002;j=j+2)
            {
                c[i*j]=1;
            }
        }
    }
    x=1;
    for(i=1;i<=1000002;i++)
    {
        if(c[i]==0)
        {
            v[x]=i;
            x++;
        }
    }
    for(i=1;i<=n;i++)
    {
        ok=0;
        s=1;
        f>>nr>>k;
        for(j=1;j<=k;j++)
        {
            s=s*v[j];
        }
        for(j=1;j<=nr;j++)
        {
            if(j==s)
            {
                g<<j<<"\n";
                ok=1;
            }
        }
        if(ok==0)
        g<<"0"<<"\n";
    }
    return 0;
}