Pagini recente » Cod sursa (job #2544384) | Cod sursa (job #2463587) | Cod sursa (job #2684221) | Cod sursa (job #1104651) | Cod sursa (job #1585472)
#include <iostream>
#include <fstream>
using namespace std;
ifstream fi("gfact.in");
ofstream fo("gfact.out");
int p, q;
int zero(int n){
int r = 0;
while (n >= p){
r += n / p;
n /= p;
}
return r;
}
int cautbin()
{
int i = 0;
int pas = (long long)1 << 30;
while (pas != 0)
{
if (zero(i + pas) == q)
i += pas;
pas /= 2;
}
return i;
}
int main()
{
int nr;
fi >> p >> q;
nr = cautbin();
if (zero(nr) == q)
fo << nr-1;
else fo << -1;
}