Pagini recente » Cod sursa (job #377093) | Cod sursa (job #2824605) | Cod sursa (job #5686) | Cod sursa (job #2586631) | Cod sursa (job #2378234)
#include <fstream>
using namespace std;
ifstream in ("fact.in");
ofstream out ("fact.out");
int main (void)
{
unsigned long long a,l=0,best=1;
in>>a;
int r=a*5;
int copie=a;
if (a==0)
{
out<<'1';
return 0;
}
while (copie%5==0)
copie/=5;
if (copie==1)
{
out<<-1;
return 0;
}
while (l<=r)
{
int mid=(l+r)/2,sol=0;
for (int d=5;d<=mid;d*=5)
sol+=mid/d;
if (sol>=a)
{
best=mid;
r=mid-1;
}
else
l=mid+1;
}
out<<best;
return 0;
}