Pagini recente » Cod sursa (job #732285) | Cod sursa (job #729021) | Cod sursa (job #3291528) | Cod sursa (job #2533147) | Cod sursa (job #1754376)
#include <iostream>
#include <fstream>
using namespace std;
ifstream f("fact.in");
ofstream g("fact.out");
long long func(long long n){
long long p=1,s=0;
while(p <= n){
p*=5;
s+=n/p;
}
return s;
}
int main()
{
long long st=1,dr = 100000000;
long long mij;
bool gasit = false;
long long n0,p;
f >> p;
if(p == 0){
g << 1;
return 0;
}
while(st < dr && !gasit){
mij = (st + dr) / 2;
n0 = func(mij);
if(n0 == p) gasit = true;
else if(n0 < p) st = mij + 1;
else dr = mij - 1;
}
if(!gasit) g << -1;
else{
while(mij%5) mij--;
g << mij;
}
return 0;
}