Pagini recente » Cod sursa (job #280484) | Cod sursa (job #362988) | Cod sursa (job #1694711) | Cod sursa (job #2540724) | Cod sursa (job #2555083)
#include<bits/stdc++.h>
using namespace std;
long long n;
ifstream in("fact.in");
ofstream out("fact.out");
#define MAX 100000000000
long long get_zero_in_factorial(long long last)
{
long long div=5;
long long result=0;
while(div<=last)
{
result+=last/div;
div*=5;
}
return result;
}
int solve()
{
long long left=1,right=MAX;
long long to_return=-1;
while(left<right)
{
long long middle=(left+right)/2;
long long here=get_zero_in_factorial(middle);
if(n<=here)
{
right=middle;
}
else if(n>here)
{
left=middle+1;
}
}
if(get_zero_in_factorial(left)==n)
return left;
return -1;
}
int main()
{
in>>n;
out<<solve();
}