Cod sursa(job #2249824)
| Utilizator | Data | 30 septembrie 2018 11:18:10 | |
|---|---|---|---|
| Problema | Divizori Primi | Scor | 10 |
| Compilator | cpp | Status | done |
| Runda | Arhiva de probleme | Marime | 0.88 kb |
#include <iostream>
#include <fstream>
using namespace std;
int nrdiv(int x)
{
int nr=0;
if(x%2==0)
{
while(x%2==0)
x/=2;
nr++;
}
for(int i=3;i<=x;i+=2)
{
if(x%i==0)
{
while(x%i==0)
x/=i;
nr++;
}
}
return nr;
}
int main()
{
ifstream f("divprim.in");
ofstream g("divprim.out");
int x,n,T,mare;
f>>T;
for(int i=0;i<T;i++)
{
f>>x;
f>>n;
{
mare=-1;
for(int j=x;j>=2;j--)
{
if(nrdiv(j)==n )
{
mare=j;
break;
}
}
if(mare==-1)
g<<0<<"\n";
else
g<<mare<<"\n";
}
}
return 0;
}
