Cod sursa(job #2791926)
Utilizator | Data | 31 octombrie 2021 13:59:54 | |
---|---|---|---|
Problema | Divizori Primi | Scor | 100 |
Compilator | cpp-64 | Status | done |
Runda | Arhiva de probleme | Marime | 0.66 kb |
#include <fstream>
using namespace std;
ifstream cin("divprim.in");
ofstream cout("divprim.out");
const int nmax=1000000, kmax=7;
int sol[nmax+2][kmax+2],v[nmax+2],t,n,k,i,j,d;
int main()
{
v[1]=1;
for(i=2; i<=nmax; i++)
{
if(v[i]==0)
{
for(d=i; d<=nmax; d=d+i)
{
v[d]++;
}
}
}
for(i=2; i<=nmax; i++)
{
for(j=1; j<=kmax; j++)
{
sol[i][j]=sol[i-1][j];
}
sol[i][v[i]]=i;
}
cin >>t;
for(i=1; i<=t; i++)
{
cin >>n>>k;
cout <<sol[n][k]<<"\n";
}
return 0;
}