Cod sursa(job #3202087)
Utilizator | Berrin Askar baskar | Data | 10 februarie 2024 17:11:07 |
---|---|---|---|
Problema | Divizori Primi | Scor | 55 |
Compilator | cpp-64 | Status | done |
Runda | Arhiva de probleme | Marime | 0.7 kb |
#include <fstream>
using namespace std;
ifstream cin("divprim.in");
ofstream cout("divprim.out");
const int vmax=1000001;
int ciur[1000001];
void Ciur()
{
for(int i=3;i<=vmax;i+=2)
{
if(ciur[i]==0)
for(int j=i;j<=vmax;j+=i)
{
ciur[j]++;
}
}
}
int main()
{
Ciur();
int n, k, t;
cin>>t;
// cout<<ciur[10]<<endl;
while(t)
{
cin>>n>>k;
int cp;
cp=ciur[n];
if(n%2==0)
cp++;
while(cp!=k && n>=1){
n--;
cp=ciur[n];
if(n%2==0)
cp++;
}
cout<<n<<endl;
t--;
}
return 0;
}