Pagini recente » Cod sursa (job #430006) | Cod sursa (job #815768) | Cod sursa (job #1574265) | Cod sursa (job #2983445) | Cod sursa (job #1210131)
#include <iostream>
#include <fstream>
using namespace std;
ifstream fin("fact.in");
ofstream fout("fact.out");
int p;
int funt(long long int x)
{
int sol=0;
int po=5;
while(x/po>0)
{
sol+=x/po;
po*=5;
}
return sol;
}
void cautbin(int lo, int hi)
{
while(hi-lo>1)
{
long long int mid=lo+(hi-lo)/2;
if(funt(mid)<p) lo=mid;
else hi=mid;
}
if(hi==p*5) fout<<-1<<"\n";
else fout<<hi<<"\n";
}
int main()
{
fin>>p;
//caz particular
if(p==0) {fout<<1<<"\n";return 0;}
cautbin(-1,p*5);
}