Cod sursa(job #3152481)

Utilizator tmi26Teodor Stupariu tmi26 Data 25 septembrie 2023 12:59:38
Problema GFact Scor 0
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.64 kb
#include <bits/stdc++.h>

using namespace std;
ifstream fin("fact.in");
ofstream fout("fact.out");
long long fact(long long n,long long p)
{
    long long cnt=0;
    while(n)
    {
        cnt+=n/p;
        n/=p;
    }
    return cnt;
}
long long cautbin(long long p,long long q)
{
    long long i1=1,i2=1e18,mij,rez=0;
    while(i1<=i2)
    {
        mij=(i1+i2)/2;
        long long val=fact(mij,p);
        if(val>=q)
        {
            rez=mij;
            i2=mij-1;
        }
        else i1=mij+1;
    }
    return rez;
}
int main()
{
    long long p,q;
    fin>>p>>q;
    fout<<cautbin(p,q);
    return 0;
}