Pagini recente » Cod sursa (job #1781056) | Cod sursa (job #1672300) | Cod sursa (job #2691435) | Cod sursa (job #2690861) | Cod sursa (job #1210130)
#include <iostream>
#include <fstream>
using namespace std;
ifstream fin("fact.in");
ofstream fout("fact.out");
int p;
int funt(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)
{
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);
}