Cod sursa(job #1938331)

Utilizator Serban2331Foica Serban Serban2331 Data 24 martie 2017 19:21:40
Problema Divizori Primi Scor 20
Compilator cpp Status done
Runda alianta_001 Marime 0.84 kb
#include <iostream>
#include <fstream>
using namespace std;
ifstream f("divprim.in");
ofstream g("divprim.out");
int i,j,v[100000],k[100000],n[100000],Max,t,ok;
int main()
{
    f>>t;
    for(i=1;i<=t;i++)
    {
        f>>n[i];
        f>>k[i];
        if(Max<n[i])
        Max=n[i];
    }
    for(i=2;i<=Max;i=i+2)
    {
        v[i]++;
    }
    for(i=3;i<=Max;i=i+2)
    {
        if(v[i]==0)
        {
            for(j=1;j*i<=Max;j=j+1)
            {
                v[i*j]++;
            }
        }
    }
    for(i=1;i<=t;i++)
    {
        ok=0;
        j=n[i];
        while(j>=1 && ok==0)
        {
            if(v[j]==k[i])
            {
                ok=1;
            }
            j--;
        }
        if(ok==1)
        g<<j+1<<"\n";
        else
        g<<0<<"\n";
    }
    return 0;
}