Pagini recente » Clasamentul arhivei de probleme | Cod sursa (job #1364521) | Cod sursa (job #2086435) | Borderou de evaluare (job #585087) | Cod sursa (job #2708256)
#include<iostream>
#include<fstream>
using namespace std;
ifstream fin("fact.in");
ofstream fout("fact.out");
int main()
{
unsigned long nrzerouri,st=0,dr=2000000000,cautat=0,x,auxiliar,mijloc;
fin >> nrzerouri;
if(nrzerouri==1)
{
fout << "1" << " ";
return 0;
}
else
{
while(st<=dr && !cautat)
{
mijloc=(st+dr)/2;
auxiliar=mijloc;
x=0;
while(auxiliar)
{
x=x+auxiliar/5;
auxiliar=auxiliar/5;
}
if(x==nrzerouri) cautat=mijloc;
else
if(x<nrzerouri)
st=mijloc+1;
else
dr=mijloc-1;
}
}
if(!cautat)
fout << "-1";
else
fout << cautat-cautat%5;
return 0;
}