Cod sursa(job #2384273)
| Utilizator | Data | 20 martie 2019 16:12:36 | |
|---|---|---|---|
| Problema | Divizori Primi | Scor | 40 |
| Compilator | cpp-64 | Status | done |
| Runda | excelenta-tema2 | Marime | 0.58 kb |
#include <bits/stdc++.h>
#define ll long long
using namespace std;
ifstream f("divprim.in");
ofstream g("divprim.out");
ll v[1000001], a[100001][8], n, k, t;
void ciur()
{
for(ll i=2; i<=100001; i++)
{
if(v[i]==0)
for(ll j=i; j<=1000001; j+=i)
v[j]++;
a[i][v[i]]=i;
}
for(ll j=1; j<=7; j++)
for(ll i=1; i<=100001; i++)
if(a[i][j]==0) a[i][j]=a[i-1][j];
}
int main()
{
ciur();
f>>t;
while(t)
{
f>>n>>k;
g<<a[n][k]<<'\n';
t--;
}
return 0;
}
