Cod sursa(job #1588776)

Utilizator Firealex2Rotileanu Alexandru Firealex2 Data 3 februarie 2016 16:49:37
Problema GFact Scor 15
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.53 kb
#include <iostream>
#include <fstream>

using namespace std;

ifstream fi("gfact.in");
ofstream fo("gfact.out");

long long p, q;

long long zero(long long n){

	long long r = 0;
	while (n >= p){
		r += n / p;
		n /= p;
	}
	return r;
}
long long cautbin()
{
	long long i = 0;
	int pas = (long long)1 << 30;
	while (pas != 0)
	{
		if (zero(i + pas) < q)
			i += pas;
		pas /= 2;
	}
	return i+1;
}

int main()
{
	long long nr;
	fi >> p >> q;
	nr = cautbin();
	if (zero(nr) == q)
		fo << nr;
	else fo << -1;
}