Cod sursa(job #2210227)

Utilizator markerenaMark Erena markerena Data 5 iunie 2018 21:58:07
Problema GFact Scor 15
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.7 kb
#include <fstream>

using namespace std;
int putere(int mid,int p,int q)
{
    int ci;
    if(p==1)
        q=0;
    else
        for(int i=p;i<=mid;i+=p)
        {
            ci=i;
            while(ci%p==0)
            {
                q--;
                ci/=p;
            }
        }
    return q;
}
int main()
{
    ifstream in ("gfact.in");
    ofstream out ("gfact.out");
    int st=1,p,q;
    long long rez=1,dr;
    int mid;
    in>>p>>q;
    dr=p*q;
    while(st<=dr)
    {
        mid=(st+dr)/2;
        if(putere(mid,p,q)>0)
            st=mid+1;
        else
        {
            rez=mid;
            dr=mid-1;
        }
    }
    out<<rez;
    return 0;
}