Cod sursa(job #2068850)

Utilizator FrincuFrinculeasa Alexandru Frincu Data 18 noiembrie 2017 11:26:50
Problema GFact Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.52 kb
#include <iostream>
#include <fstream>
using namespace std;

int caut_nr(int nr,int n)
{
    int nrz=0;
    while(n>=nr)
        nrz+=(n/=nr);
    return nrz;
}
int main()
{
    long long nr,pas,r,q;
    ifstream cin("gfact.in");
    ofstream cout("gfact.out");
    cin>>nr>>q;
    pas=(nr*q)/2;
    r=0;
    while(pas!=0)
    {
        if(caut_nr(nr,r+pas)<q)
            r+=pas;
        pas=pas/2;
    }
    if(caut_nr(nr,r+1) == q)
        cout << -1;
    else
        cout<<r+1;
    return 0;
}