Cod sursa(job #2749666)

Utilizator NashikAndrei Feodorov Nashik Data 7 mai 2021 18:11:19
Problema Divizori Primi Scor 0
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.81 kb
//#include <iostream>
#include <fstream>
using namespace std;
ifstream cin("divprim.in");
ofstream cout("divprim.out");
int sieve[1000005],div[1000005],rasp[1000005][10],n,k;
int main()
{
    for(int i=2;i<=1000000;i++){
        if(sieve[i]==0){
            //if(i<=20)
                //cout<<i<<"\n";
            for(int j=2*i;j<=1000000;j+=i){
                sieve[j]=1;
                div[j]++;
            }
            div[i]++;
        }
    }
    rasp[0][0]=1;
    for(int i=1;i<=1000000;i++){
        for(int j=0;j<=7;j++){
            rasp[i][j]=rasp[i-1][j];
        }
        rasp[i][div[i]]=i;
        //if(i<=20)
            //cout<<i<<" "<<div[i]<<"\n";
    }
    int t;
    cin>>t;
    while(t--){
        cin>>n>>k;
        cout<<rasp[n][k]<<"\n";
    }
    return 0;
}