Pagini recente » Cod sursa (job #979073) | Cod sursa (job #422348) | Cod sursa (job #735155) | Cod sursa (job #821371) | Cod sursa (job #3338679)
#include <fstream>
using namespace std;
const int maxn = 1000000;
ifstream fin("divprim.in");
ofstream fout("divprim.out");
int cnt[maxn+1];
int best[8][maxn+1];
int main()
{
for (int i=2; i<=maxn; i++)
{
if (cnt[i]==0)
{
for (int j=i; j<=maxn; j+=i)
{
cnt[j]++;
}
}
}
for (int k=0; k<=7; k++)
{
best[k][0]=0;
for (int x=1; x<=maxn; x++)
{
if (cnt[x]==k) best[k][x]=x;
else best[k][x] = best[k][x-1];
}
}
int t;
fin>>t;
while (t--)
{
int n, k;
fin>>n>>k;
if (k>7) fout<<0<<'\n';
else fout<<best[k][n]<<'\n';
}
return 0;
}