Cod sursa(job #1374559)

Utilizator EberardoVladianu Cosmin Eberardo Data 5 martie 2015 10:01:41
Problema Divizori Primi Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.75 kb
#include <fstream>

using namespace std;
ifstream fin("divprimi.in");
ofstream fout("divprimi.out");
int viz[1000002];
int t,n,nr,k;

#define NMAX 1000000

void ciur()
{
    int i,d;
    i=2;
    for(d=2;d<=NMAX;d+=i)
        viz[d]++;

    for(i=3;i<=NMAX;i+=2)
    {
        if(viz[i]==0)
        {

            for(d=i;d<=NMAX;d+=i)
                viz[d]++;


        }

    }
}
void citire()
{
    int i;
    fin>>t;
    while(t)
    {
        fin>>n>>k;
        for(i=n;i>0;i--)
        {
            if(viz[i]==k)
            {fout<<i<<'\n';
                i=-1;
            }
        }
        if(i==0)
            fout<<0<<'\n';
        t--;
    }
}
int main()
{
    ciur();
    citire();
    return 0;
}