Pagini recente » Cod sursa (job #2276326) | Cod sursa (job #1905700) | Cod sursa (job #910047) | Cod sursa (job #224690) | Cod sursa (job #853700)
Cod sursa(job #853700)
#include <iostream>
#include <fstream>
#define MAX 1000000000
using namespace std;
ifstream fin("fact.in");
ofstream fout("fact.out");
int nrzeroes(long long int n){
long long int result = 0;
while(n){
result += n/5;
n /= 5;
}
return result;
}
int binary_zero(long long int p){
long long int st = 1, dr = MAX,mid;
long long int c;
while(st < dr){
mid = (st + dr)/2;
c = nrzeroes(mid);
if(c < p)
st = mid + 1;
else
dr = mid;
}
mid = (st+dr)/2;
if(nrzeroes(mid) < p)
mid--;
if(nrzeroes(mid) != p)
return -1;
return mid;
}
long long int p;
int main()
{
fin>>p;
fout<<binary_zero(p);
return 0;
}