Pagini recente » Cod sursa (job #120586) | Cod sursa (job #2725398) | Cod sursa (job #2166315) | Cod sursa (job #395644) | Cod sursa (job #2748997)
#include <fstream>
using namespace std;
long long f(int x){
long long p = 5, k = 0;
while(x / p > 0){
k = k + x / p;
p *= 5;
}
return k;
}
int main()
{
ifstream cin("fact.in");
ofstream cout("fact.out");
long long p;
cin >> p;
if(p == 0){
cout << 1;
}
else {
int st = 1, dr = 5 * p, sol = -1;
while(st <= dr){
int med = (st + dr) / 2;
if(f(med) < p){
st = med + 1;
}
else if(f(med) >= p){
dr = med - 1;
sol = med;
}
}
if(sol != -1 && f(sol) == p){
cout << sol - sol % 5;
}
else {
cout << -1;
}
}
return 0;
}